android I/O

   本文主要涉及一些文件的保存、复制;

复制文件代码:

  
  
  
  
  1. public void copyFile(String oldPath, String newPath) {     
  2.            try {     
  3.                File oldfile = new File(oldPath);   
  4.                boolean can_read=oldfile.canRead();//判断是否可读?  
  5.               System.out.println(can_read);  
  6.                if (oldfile.exists()) { //文件存在时     
  7.                    InputStream inStream = new FileInputStream(oldPath); //读入原文件     
  8.                   @SuppressWarnings("resource")  
  9.                 FileOutputStream fs = new FileOutputStream(newPath);//新建输出流     
  10.                    byte[] buffer = new byte[1444];     
  11.                    inStream.read(buffer);  
  12.                    fs.write(buffer);  
  13.                 /*  while ( (byteread = inStream.read(buffer)) != -1) {  //如果到了流的末尾会返回-1   
  14.                        bytesum += byteread; //字节数 文件大小   得到字节总数  
  15.                        fs.write(buffer, 0, byteread);   //从buffer中写入byteread  
  16.                  }*/     
  17.                   inStream.close();     
  18.       }     
  19.          }     
  20.            catch (Exception e) {     
  21.                System.out.println("复制单个文件操作出错");     
  22.         e.printStackTrace();     
  23.        
  24.     }     
  25.  
  26. }    

写入也可以用被注释的部分。

如下是我自己学习时候,先把一个字符串写入zhao.txt然后再从里面读出来,输出显示。这里先把字符串转换成“UTF-8”编码,读取的时候也要转换:

  
  
  
  
  1. try {  
  2.           
  3.       String    version="good";  
  4.           
  5.     @SuppressWarnings("resource")  
  6.     FileOutputStream version_write=new FileOutputStream(savefile);  
  7.       
  8.         version_write.write(version.getBytes("UTF-8"));}//写入  
  9.     catch (UnsupportedEncodingException e) {  
  10.         // TODO Auto-generated catch block  
  11.         e.printStackTrace();  
  12.     } catch (IOException e) {  
  13.         // TODO Auto-generated catch block  
  14.         e.printStackTrace();  
  15.     }  
  16.        
  17.       try {  
  18.     @SuppressWarnings("resource")  
  19.     FileInputStream version_read=new FileInputStream(savefile);  
  20.            byte[] version_byte=new byte[1024];  
  21.       version_read.read(version_byte);//读出编码  
  22.        
  23.       String ru=EncodingUtils.getString(version_byte, "UTF-8");//解码  
  24.      System.out.println(ru);//输出显示  
  25.                       
  26. catch (FileNotFoundException e) {  
  27.     // TODO Auto-generated catch block  
  28.     e.printStackTrace();  
  29. catch (IOException e) {  
  30.     // TODO Auto-generated catch block  
  31.     e.printStackTrace();  
  32. }  
  33.       

 

你可能感兴趣的:(android,I/O)