java实现输入输出流代码分享
程序员文章站
2024-03-05 23:31:13
1,编写一个程序,读取文件test.txt的内容并在控制台输出。如果源文件不存在,则显示相应的错误信息。
package src;
import ja...
1,编写一个程序,读取文件test.txt的内容并在控制台输出。如果源文件不存在,则显示相应的错误信息。
package src; import java.io.file; import java.io.filenotfoundexception; import java.io.filereader; import java.io.ioexception; public class test { public static void main(string[] args) { file f = new file("src\\test.txt");//文件在src名为test.txt中 try { filereader fr = new filereader(f);//将文件读取到内容中 int m; while((m=fr.read())!=-){ system.out.print((char)(m)); } } catch (filenotfoundexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } } }
2,编写一个程序实现如下功能,从当前目录下的文件fin.txt中读取80个字节(实际读到的字节数可能比80少)并将读来的字节写入当前目录下的文件fout.txt中
package src; import java.io.file; import java.io.fileinputstream; import java.io.filenotfoundexception; import java.io.fileoutputstream; import java.io.ioexception; public class test { public static void main(string[] args) { file f = new file("src\\fin.txt");//src下fin.txt文件 file f = new file("src\\fout.txt");//src下fout.txt文件 try { fileinputstream fis = new fileinputstream(f); fileoutputstream fos = new fileoutputstream(f); byte[] temp = new byte[];//定义一个字节数组 fis.read(temp);//读到内存中 fos.write(temp);//写到文件 fis.close(); fos.close(); } catch (filenotfoundexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } } }
3,使用java的输入/输出流技术将一个文本文件的内容按行读出,每读出一行就顺序添加行号,并写入到另一个文件中。
package src; import java.io.bufferedreader; import java.io.bufferedwriter; import java.io.file; import java.io.filenotfoundexception; import java.io.filereader; import java.io.filewriter; import java.io.ioexception; public class test { public static void main(string[] args) { file f = new file("src\\fin.txt");//src下fin.txt文件 file f = new file("src\\fout.txt");//src下fout.txt文件 try { filereader fr = new filereader(f); filewriter fw = new filewriter(f); bufferedreader br = new bufferedreader(fr); bufferedwriter bw = new bufferedwriter(fw); string temp; int i=; while((temp=br.readline())!=null){ bw.write(i+","+temp); bw.newline();//换行 i++; } bw.flush();//把缓冲区内容写到文件 br.close(); bw.close(); br.close(); bw.close(); } catch (filenotfoundexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } } }
4,编写一个程序,接收从键盘输入的数据,并把从键盘输入的内容写到input.txt文件中,如果输入"quit",则程序结束。
package src; import java.io.file; import java.io.filewriter; import java.io.ioexception; import java.util.scanner; public class test { public static void main(string[] args) { file f = new file("src\\input.txt"); try { filewriter fw = new filewriter(f); scanner scanner = new scanner(system.in); string temp; while(!((temp=scanner.nextline()).equals("quit"))){ fw.write(temp); } fw.close(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } } }
5,编写一个程序实现如下功能,文件fin.txt是无行结构(无换行符)的汉语文件,从fin中读取字符,写入文件fou.txt中,每40个字符一行(最后一行可能少于40个字)
package src; import java.io.file; import java.io.filenotfoundexception; import java.io.filereader; import java.io.filewriter; import java.io.ioexception; public class test { public static void main(string[] args) { file f=new file("src\\fin.txt"); file f=new file("src\\fout.txt"); try { filereader fr=new filereader(f); filewriter fw=new filewriter(f); char temp[]=new char[]; int len; while((len=fr.read(temp))!=-) { if(len==) fw.write(new string(temp)+"\n"); else fw.write(temp, , len); } fr.close(); fw.close(); } catch (filenotfoundexception e) { // todo 自动生成的 catch 块 e.printstacktrace(); } catch (ioexception e) { // todo 自动生成的 catch 块 e.printstacktrace(); } } }