一、实验
实验源码:
package Orange;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.Scanner;
public class Transform {
public static void main(String[] args) throws Exception {
File f=new File("d:"+File.separator+"Java"+File.separator+"transform.txt");
OutputStream out = null;
out = new FileOutputStream(f);
Scanner scanner = new Scanner(System.in);
System.out.println("");
String str = scanner.nextLine();
byte b[] = str.getBytes(); //将字符串变为byte数组
for(int i=0;i<b.length;i++) {
if (i % 2 == 0 && b[i] >= 'a' && b[i] <= 'z') {
b[i] = (byte) (b[i] - 32); //将奇数位变为大写
}
}
out.write(b);
out.close();
}
}
运行结果:
二、总结
Java IO
1、file类
file类的构造方法:
public Flie(String pathname) -->实例化Flie类的时候,必须设置好路径。
如:Flie f = new Flie("d:\test.txt");
(1)Windows中使用反斜杠表示目录的分隔符。
(2) Linux中使用正斜杠表示目录的分隔符。
Flie类主要方法:
2、字节流与字符流
Java IO的操作流程:
(1)使用Flle类打开一个文件。
(2)通过字节流和字符流的子类指定输出的位置。
(3)进行读和写的操作。
(4)关闭输入和输出。
字节流
字节输出流:OUtputStream
OutputStream是一个抽象类,因此需要通过子类FileOutputStream实例化对象,才能够使用它。
常用方法:
字节输入流:InputStream
它与OutputStream一样,需要通过子类FlieInputStream实例化对象。
常用方法:
字符流
字符输出流:Writer
它也是一个抽象类,需要通过子类FlieWriter实例化对象。
常用方法:
字符输入流:Reader
同样是一个抽象类,需要通过子类FlieReader实例化对象。
常用方法: