对文件流处理(IO读取,复制,保存)

package com.test.io;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Scanner;

public class TestStream {
InputStream is = null;

int a = 0;

OutputStream os = null;

/**
* 文件读取
*
*/
public void readTest() {
try {
is = new FileInputStream("c:/a.txt");
while ((is.read()) != -1) {
System.out.print((char) is.read());
}
System.out.println("读取成功");
is.close();
} catch (FileNotFoundException e) {
System.out.println("没找到文件");
e.printStackTrace();
} catch (IOException e) {
System.out.println("文件输出异常");
e.printStackTrace();
}
}

/**
* 控制台输入到c:/b.txt
*/
public void outStream() {
Scanner input = new Scanner(System.in);
System.out.println("请输入你要保存文件的路径:");
String in = input.next();
System.out.println("请输入你要写入的文件内容(写end结束):");
String s = "";
String a = "";
while (!a.equals("end")) {
a = input.next();
s = s + a;
}
byte[] b = s.getBytes();
try {
os = new FileOutputStream(in);
os.write(b);
os.close();
} catch (FileNotFoundException e) {
System.out.println("没找到文件");
e.printStackTrace();
} catch (IOException e) {
System.out.println("文件输出异常");
e.printStackTrace();
}
}

/**
* 把c:/a.txt 复制到d:/c.txt
*
*/
public void copyRead() {
Scanner input = new Scanner(System.in);
System.out.println("请输入你要复制的原文件目录:");
String s = input.next();
System.out.println("请输入你要复制的目的地:");
String o = input.next();
try {
is = new FileInputStream(s);
os = new FileOutputStream(o);
while ((a = is.read()) != -1) {
os.write((char) a);
}
System.out.println("复制成功!");
os.close();
is.close();
} catch (FileNotFoundException e) {
System.out.println("没找到文件");
e.printStackTrace();
} catch (IOException e) {
System.out.println("文件输出异常");
e.printStackTrace();
}
}

public static void main(String[] args) {
// new TestStream().readTest();
new TestStream().outStream();
// new TestStream().copyRead();
}
}

 

你可能感兴趣的:(java,C++,c,C#,OS)