she*_*anD 2 java swing jtextarea jt400 ibm-midrange
我正在尝试在JAVA中读取AS400假脱机文件.我用这段代码读了它.但问题是它只检索该假脱机文件的一个页面详细信息.但我想阅读并获取所有页面详细信息.谁知道怎么做?
提前致谢!
代码:
try {
jTextArea1.setText(null);
DefaultTableModel DTM =(DefaultTableModel) jTable1.getModel();
int SR = jTable1.getSelectedRow();
String SPLFNAME = (String) DTM.getValueAt(SR, 0);
String SPLFNUMBERT = (String) DTM.getValueAt(SR, 1);
String JOBNAME = (String) DTM.getValueAt(SR, 3);
String JOBUSER = (String) DTM.getValueAt(SR, 4);
String JOBFNUMBER = (String) DTM.getValueAt(SR, 5);
int SPLNO = Integer.parseInt(SPLFNUMBERT);
AS400 sys = new AS400();
SpooledFile sf = new SpooledFile( sys, // AS400
SPLFNAME, // splf name
SPLNO, // splf number
JOBNAME, // job name
JOBUSER, // job user
JOBFNUMBER ); // job number
PrintParameterList printParms = new PrintParameterList();
printParms.setParameter(PrintObject.ATTR_WORKSTATION_CUST_OBJECT, "/QSYS.LIB/QWPDEFAULT.WSCST");
printParms.setParameter(PrintObject.ATTR_MFGTYPE, "*WSCST");
// Create a page input stream from the spooled file
PrintObjectPageInputStream is = sf.getPageInputStream(printParms);
BufferedReader d = new BufferedReader(new InputStreamReader(is));
String data ="";
while((data = d.readLine() )!=null)
{
System.out.println (data);
jTextArea1.setText(jTextArea1.getText()+"\n"+data);
}
} catch (Exception e) {
System.out.println(e);
}
Run Code Online (Sandbox Code Playgroud)
该PrintObjectPageInputStream类有一个下一页() 方法来移动到下一个页面.
BufferedReader d = new BufferedReader(new InputStreamReader(is));
String data = "";
do {
while((data = d.readLine()) != null)
{
System.out.println (data);
jTextArea1.setText(jTextArea1.getText()+"\n"+data);
}
} while (d.nextPage());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2250 次 |
| 最近记录: |