FileOutputStreamストリームの書き込み中にJavaメソッド

次のようにここでは、あなたの参考のために、書き込みのFileOutputStreamストリームを共有するための方法であり、

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
/*------------------------
FileOutputStream:
....//输出流,字节流
....//write(byte[] b)方法: 将b.length个字节从指定字节数组写入此文件输出流中
....//write(byte[] b, int off, int len)方法:将指定字节数组中从偏移量off开始的len个字节写入此文件输出流
-------------------------*/
package pack02;
 
import java.io.*;
 
public class Demo {
  
  public static void main(String[] args) {
   
   testMethod1(); //从程序中向一个文件写入数据
   testMethod2(); //复制一个文件的内容到另一个文件
  }
  
  //从程序中向一个文件写入数据
  public static void testMethod1() {
   
   File file1 = new File( "d:/TEST/MyFile1.txt" );
   FileOutputStream fos = null ;
   
   try {
    
    fos = new FileOutputStream(file1); //将FileOutputStream流对象连接到file1代表的文件
    
    fos.write( new String( "This is MyFile1.txt" ).getBytes() );
    //使用方法write(byte[] b),即向文件写入一个byte数组的内容
    //这里创建一个字符串对象,并调用方法getBytes(),将其转换成一个字符数组作为write(byte[] b)的形参
    //当文件MyFile1.txt不存在时,该方法会自动创建一个这个文件;当文件已经存在时,该方法会创建一个新的同名文件进行覆盖并写入数组内容
    
   } catch (IOException e) {
    
    e.printStackTrace();
    
   } finally {
    
    if ( fos != null )
     try {
      fos.close(); //关闭流
     } catch (IOException e) {
      e.printStackTrace();
     }
   }
  }
  
  //从一个文件读取数据,然后写入到另一个文件中;相当于内容的复制
  public static void testMethod2() {
   
   File fileIN = new File( "d:/TEST/MyFile2.txt" ); //定义输入文件
   File fileOUT = new File( "d:/TEST/MyFile3.txt" ); //定义输出文件
   
   FileInputStream fis = null ;
   FileOutputStream fos = null ;
   
   try {
    
    fis = new FileInputStream(fileIN); //输入流连接到输入文件
    fos = new FileOutputStream(fileOUT); //输出流连接到输出文件
    
    byte [] arr = new byte [ 10 ]; //该数组用来存入从输入文件中读取到的数据
    int len; //变量len用来存储每次读取数据后的返回值
    
    while ( ( len=fis.read(arr) ) != - 1 ) {
     fos.write(arr, 0 , len);
    } //while循环:每次从输入文件读取数据后,都写入到输出文件中
    
   } catch (IOException e) {
    e.printStackTrace();
   }
   
   //关闭流
   try {
    fis.close();
    fos.close();
   } catch (IOException e) {
    e.printStackTrace();
   }
  }
  
}

注:希望与各位读者相互交流,共同学习进步。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

おすすめ

転載: www.cnblogs.com/zhuyeshen/p/11434024.html