从具有特定格式的文件中读取

时间:2013-11-22 06:23:28

标签: java

您好亲爱的朋友们,     好吧,我正在研究一个项目,我已经定义了一个在文本文件中写入数据的函数,下面这个函数是从文件中读取数据的,所以有一个小问题,每个数据看起来都在分离的JOptionPane消息对话框,如何定义一个允许我以同时出现数据的方式格式化我的函数的GUI,

 int i=0;
 Object[] options = {"OK"};
 try
 {
 FileInputStream in = new FileInputStream("records.txt");
 BufferedReader br = new BufferedReader(new InputStreamReader(in));
 String strLine;

 while((strLine = br.readLine())!= null)
 {
 JOptionPane.showMessageDialog( null, strLine +"\n");
 }

 }catch(Exception e){
 JOptionPane.showOptionDialog(null, "Error", "Customers",       JOptionPane.PLAIN_MESSAGE,JOptionPane.QUESTION_MESSAGE, null, options, options[0]);
 }

感谢任何帮助,

4 个答案:

答案 0 :(得分:0)

你需要的东西

StringBuilder builder = new StringBuilder();
while ((strLine = br.readLine()) != null) {
             builder.append(strLine).append('\n');
}
JOptionPane.showMessageDialog(null, builder.toString());

答案 1 :(得分:0)

你需要StringBuffer或StringBuilder ..就像这样..

try
 {
 FileInputStream in = new FileInputStream("records.txt");
 BufferedReader br = new BufferedReader(new InputStreamReader(in));
 String strLine;
 StringBuffer sb = new StringBuffer();
 while((strLine = br.readLine())!= null)
 {
     sb.append(strLine +"\n");
 }
 JOptionPane.showMessageDialog( null, sb.toString());
 }catch(Exception e){
 JOptionPane.showOptionDialog(null, "Error", "Customers",       JOptionPane.PLAIN_MESSAGE,JOptionPane.QUESTION_MESSAGE, null, options, options[0]);
 }

答案 2 :(得分:0)

那是因为你的JOptionPane.showMessageDialog在循环中。 使用StringBuilder附加所有输入和 在循环之外调用JOptionPane.showMessageDialog。

答案 3 :(得分:0)

使用Apache common中的IOUtil,

InputStream is = new FileInputStream("records.txt");
String fileContent = IOUtils.toString(is);
JOptionPane.showMessageDialog( null, filecontent);
is.close();

否则使用StringBuilder并将每行附加到其中。