一。创建文件夹及文件
package test;
import java.io.File;
import java.io.IOException;
public class Test1 {
public static void main(String[] args) {
// 在c盘创建temp目录
File path = new File("E:/temp");
if (!path.exists()) {
// 创建目录
path.mkdir();//mkdir()只能创建单及目录,mkdirs可以创建多级目录。
}
// 创建text.txt文件对象
File file = new File(path + "/text.txt");
if (file.exists()) {
System.out.println("文件名:" + file.getName());
} else {
System.out.println("不存在,则创建文件!");
try {
file.createNewFile();
System.out.println("文件创建成功!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
二、向上面的代码创建的文件夹 创建文件并向文件里写入内容
package test;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class TestFileOutputStream {
public static void main(String[] args) {
String str = "hello world!";
// 使用FileOutputStream创建输出流对象
// 在 文件的时候如果E盘下没有该文件,则会自动创建该文件。但是不会创建文件夹,日过没有相应的文件夹,回提示找不到路径
try {
FileOutputStream fos = new FileOutputStream("E:/temp/text.txt");
fos.write(str.getBytes());
fos.flush();
fos.close();
System.out.println("文件写出完毕!");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
三、向以上的代码里读取文件内容(这个代码片是简单的文件读取内容方法。一般目前学习测试够用的)
package test;
/*
* IO:使用FileInputStream的简单示例:
此程序示范了如何使用FileInputStream来读取文件自身
这是一个简单方法,目前测试学习阶段都可以用*/
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class TestFileInputStream2 {
public static void main(String[] args) {
// 使用FileInputStream读取文件内容
// 创建字节输入流,路径可以是绝对路径,也可以是相对路径(相对于项目工程为根目录)
File file = new File("E:" + File.separator + "temp"+ File.separator+"text.txt");
if (file.exists()) {
try {
FileInputStream fis = new FileInputStream(file);//
// 创建一个和要读取的文件一样大小的字节数组,“一勺舀完”。
byte[] b = new byte[fis.available()];
fis.read(b);
System.out.println(new String(b));
fis.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
三、向以上的代码里读取文件内容(这个代码片是简单的文件读取内容方法。 )下面的代码不能读取汉字,还没解决,没太看懂
package test;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class TestFileInputStream {
public static void main(String[] args) {
// 使用FileInputStream读取文件内容
File file = new File("E:" + File.separator + "temp"+ File.separator+"text.txt");
if (file.exists()) {// File.separator 和"\\"和"/"一样都是文件指向路径,不过他是通用的
try {
FileInputStream fis = new FileInputStream(file); //站在内存的角度,input就是读数据,
StringBuffer sub = new StringBuffer();
byte[] b = new byte[3];
while (fis.available() > 0) {//判断文件的内容是否还有
fis.read(b);
String str = new String(b);
sub.append(str);
b = new byte[3];
}
System.out.println( sub.toString().trim());
// while(fis.available() > 0){
// System.out.print((char)fis.read());
// }
fis.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}