我的新浪微博:http://weibo.com/u/1602714773 CSDN博客:http://blog.csdn.net/hunterno4

java基本IO

上一篇 / 下一篇  2013-08-07 22:21:30 / 个人分类:Java

一、文件和目录,File类
File f = new File("d:\\test.txt");
f.createNewFile();

二、输入流及输出流
1.单字节数据读取

1)文件字节输入流,FileInputStream,继承自InputStream


  1. public static void main(String[] args) throws Exception {  
  2.         File f = new File("d:\\test.txt");                     
  3.         FileInputStream fis = new FileInputStream(f);                    
  4.         char ch;                                                         
  5.         for (int i = 0; i < f.length(); i++) {                          
  6.             ch = (char) fis.read();  
  7.             System.out.print(ch);  
  8.         }  
  9.         fis.close();  
  10.     }  

中文乱码
2)文件字节输出流,FileOutputStream,继承自OutputStream

  1. public static void main(String[] args)throws Exception   
  2.     {  
  3.         File f=new File("d:\\test.txt");  
  4.         FileOutputStream fos=new FileOutputStream(f);  
  5.         String str="我来自哪里ssss";  
  6.         byte[] by=str.getBytes();  
  7.         for(int i=0;i<by.length;i++)  
  8.         {  
  9.             fos.write(by[i]);  
  10.         }  
  11.         fos.close();  
  12.     }  

3)文件字节输入与输出流

  1. public static void main(String[] args)throws Exception{  
  2.         File f=new File("d:\\test.txt");  
  3.         File f1=new File("d:\\test2.txt");  
  4.         FileInputStream fis=new FileInputStream(f);  
  5.         FileOutputStream fos=new FileOutputStream(f1);  
  6.         byte[] b=new byte[(int)f.length()];  
  7.         fis.read(b);  
  8.         for(int i=0;i<f.length();i++){  
  9.             fos.write(b[i]);  
  10.             }  
  11.         fis.close();  
  12.         fos.close();  
  13.         }  

2.多字节数据读取
FilterOutputStream、DataOutputStream;FilterInputStream、DataInputStream
1)DataOutputStream,实现了DataOutput接口,继承了FilterOutputStream

  1. public static void main(String[] args)throws Exception{  
  2.         File f=new File("d:\\test.txt");                                 
  3.         FileOutputStream fos=new FileOutputStream(f);                 
  4.         DataOutputStream dos=new DataOutputStream(fos);              
  5.         try{  
  6.             dos.writeUTF("我要去哪里ssss");  
  7.             //dos.writeBytes("我要去哪里ddddd");          
  8.         }catch(Exception e){  
  9.             e.printStackTrace();  
  10.         }  
  11.         dos.close();                                                 
  12.     }  

2)DataInputStream,实现了DataInput接口,继承了FilterInputStream

  1. public static void main(String[] args)throws Exception   
  2.     {  
  3.         File f=new File("d:\\test.txt");  
  4.         FileInputStream fis=new FileInputStream(f);  
  5.         DataInputStream dis=new DataInputStream(fis);  
  6.         try{  
  7.             System.out.println(dis.readUTF());  
  8.         }catch(Exception e){  
  9.             e.printStackTrace();  
  10.         }  
  11.         dis.close();  
  12.     }  

3.字符流
InputStreamReader、BufferedReader;OutputStreamWriter、BufferedWriter
1)BufferedReader,继承自Reader类,带有缓冲机制,可以以行为单位进行数据操作

  1. public static void main(String[] args)throws Exception{  
  2.         File f=new File("d:\\","test.txt");                  
  3.         FileInputStream fis=new FileInputStream(f);                
  4.         InputStreamReader isr=new InputStreamReader(fis);         
  5.         BufferedReader br=new BufferedReader(isr);                
  6.         System.out.println(br.readLine());  
  7.     }  

2)BufferedWriter,继承自Writer类

TAG: BufferedReader io IO Io java 中文乱码 StringBuffer

 

评分:0

我来说两句

Open Toolbar