请各位java大神帮忙改下程序
想实现输出静夜思一句一行,可是只输出了第一句,后面就没了。。。更别说一句一行了。。。代码如下:importjava.io.*;publicclassoutput{publ...
想实现输出静夜思一句一行,可是只输出了第一句,后面就没了。。。更别说一句一行了。。。
代码如下:
import java.io.*;
public class output {
public static void main(String[] args)throws IOException{
//String a="举头明月光,疑是地上霜,举头望明月,低头思故乡.";
File f= new File("b.txt");
try{
FileOutputStream fout= new FileOutputStream("b.txt");
DataOutputStream dout= new DataOutputStream(fout);
dout.writeUTF("床前明月光");
dout.writeUTF("疑是地上霜");
dout.writeUTF("举头望明月");
dout.writeUTF("低头思故乡");
dout.flush();
dout.close();
}catch (IOException e){}
int n;
String s;
try{
DataInputStream dis=new DataInputStream(new FileInputStream("b.txt"));
s=dis.readUTF();
System.out.println(s);
}catch (Exception e){}
}
}
实现输出静夜思一句一行,可是只输出了第一句,后面就没了。。。更别说一句一行了。。。 展开
代码如下:
import java.io.*;
public class output {
public static void main(String[] args)throws IOException{
//String a="举头明月光,疑是地上霜,举头望明月,低头思故乡.";
File f= new File("b.txt");
try{
FileOutputStream fout= new FileOutputStream("b.txt");
DataOutputStream dout= new DataOutputStream(fout);
dout.writeUTF("床前明月光");
dout.writeUTF("疑是地上霜");
dout.writeUTF("举头望明月");
dout.writeUTF("低头思故乡");
dout.flush();
dout.close();
}catch (IOException e){}
int n;
String s;
try{
DataInputStream dis=new DataInputStream(new FileInputStream("b.txt"));
s=dis.readUTF();
System.out.println(s);
}catch (Exception e){}
}
}
实现输出静夜思一句一行,可是只输出了第一句,后面就没了。。。更别说一句一行了。。。 展开
展开全部
import java.io.*;
public class output {
public static void main(String[] args) throws IOException {
// String a="举头明月光,疑是地上霜,举头望明月,低头思故乡.";
try {
FileOutputStream fout = new FileOutputStream("b.txt");
DataOutputStream dout = new DataOutputStream(fout);
dout.writeUTF("床前明月光");
dout.writeUTF("疑是地上霜");
dout.writeUTF("举头望明月");
dout.writeUTF("低头思故乡");
dout.flush();
dout.close();
} catch (IOException e) {
}
String s;
try {
DataInputStream dis = new DataInputStream(new FileInputStream(
"b.txt"));
while ((s = dis.readUTF()) != null) {
System.out.println(s);
}
} catch (Exception e) {
}
}
}
因为你只读出第一句,当然只有一句了。用个循环全部输出就行了。
展开全部
你的代码s=dis.readUTF();System.out.println(s);就是读了一行输出一行,得用循环
修改如下
s=dis.readUTF();
while(s!=null)
{
System.out.println(s);
s=dis.readUTF();
}
修改如下
s=dis.readUTF();
while(s!=null)
{
System.out.println(s);
s=dis.readUTF();
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
刚要解决,没想到楼上的都有答案了,就不写了,说的都对
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我可能记不清了 我觉得应该放在一个数组里面用for循环。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用word,别乱弄,或者在哪儿打好复制粘贴
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询