import java.io.FileOutputStream;
import java.io.*;
import java.util.*;
public class FileOpreat {
public static void main(String[] args) throws Exception {
// 覆盖的方式写数据
FileOutputStream fos = new FileOutputStream(
"D:/FileOpreat/abc.txt");
String s = "老年你好";
byte[] bytes = s.getBytes();
fos.write(bytes);
// 将字符串按指定编码集编码--》将信息转成二进制数 fos.write(bytes); // 这样写入的数据,会将文件中的原数据覆盖
// 追加的方式写数据:如果要往一个文件中追加数据,则在FileOutputStream的构造参数中多传一个true
FileOutputStream fos2 = new FileOutputStream(
"D:/FileOpreat/abc.txt",true);
fos2.write("年年有余".getBytes());//安全的加密方式
fos2.close();
/**
* 第一句和后两句话写到文件中的数据完全相同
*/
//fos.write("我用一生一世为你祈祷".getBytes()); // .getBytes()编码的过程
//fos.write((byte) 49);
//fos.write((byte) 51);
/**
* 这两句话写到文件中的数据完全相同
*/
// fos.write((byte)13);
// fos.write("\r".getBytes());
fos.close();
System.out.println("新文件夹创建");
creatfile();
System.out.println("新文件txt创建");
try{
creatfilejack();
}
catch(Exception e){
System.out.println("异常");
}
}
public static void creatfile(){
File newfile=new File("D:/HELLO");
if(!newfile.exists()){
newfile.mkdirs();
}
//文件删除
//newfile.delete();
}
public static void creatfilejack()throws Exception{
String path="D:/HELLO/hello.txt";
File file=new File(path);
if(!file.exists()){
file.createNewFile();//必须调用异常抛出
}
//文件删除
//file.delete();
//文件写入--覆盖流
String s="I am a good student!";
byte[]content=s.getBytes();
FileOutputStream in=new FileOutputStream(file);
in.write(content);
in.close();
//文件写入--紧接流
String s2="I will success!";
FileWriter in2=new FileWriter(file,true);in2.write(s2);//注意此处输入的是St
ring类型,不是byte;
in2.close();
//文件打印流(写入文件)
//和紧接流一个性质,可写入字符串(由于参数是FileWriter类的)
PrintWriter printer=new PrintWriter(new FileWriter(file,true));
printer.println(s);//换行输入
printer.print(s); //非换行输入
printer.close();
//读文件--字节流(以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件)
InputStream out = new FileInputStream(file);
//一次读一个字节
int com;
while((com=out.read())!=-1){
System.out.write(com);
}
out.close();
//一次读多个字符
/*int byteread = 0;
byte[] tempbytes = new byte[100];
FileOpreat.showAvailableBytes(out);
while ((byteread = out.read(tempbytes)) != -1) {
System.out.write(tempbytes, 0, byteread);
}
}
public static void showAvailableBytes(InputStream in){
try{
System.out.println("当前字节输入流字节数为:"+in.available());
}
catch(IOException e){
e.printStackTrace();
}
}*/
}
///////////////////////////////////////////////////////////////////////////////////////////////////////
import java.io.*;//导入所需的包
public class IOTest {//类
public static void main(String[] args){//主程序,程序入口
File file=new File("C:/safety/user_data2");
if(!file.exists()){//如果文件夹不存在
file.mkdir();//创建文件夹
}
try{//异常处理
//如果Qiju_Li文件夹下没有Qiju_Li.txt就会创建该文件
BufferedWriter bw=new BufferedWriter(new FileWriter("C:/safety/user_data2/data1.txt"));
bw.write("Hello I/O!");//在创建好的文件中写入"Hello I/O"
bw.close();//一定要关闭文件
}catch(IOException e){
e.printStackTrace();
}
}
public static boolean addFile(String string,String path) {//覆盖写入
PrintStream stream=null;
try {
stream=new PrintStream(path);//写入的文件path
stream.print(string);//写入的字符串
return true;
} catch (FileNotFoundException e) {
e.printStackTrace();
}
return false;
}
public static boolean addFile(String string,String path) {//续写
//文件的续写
FileWriter fw = null;
try {
fw = new FileWriter(path,true);
//写入换行
fw.write("\r\n");//Windows平台下用\r\n,Linux/Unix平台下用\n
//续写一个hello world!
fw.write(string);
fw.close();
return true;
} catch (IOException e) {
e.printStackTrace();
}
return false;
}
public class ReadTxtFile {
public static void readTxt(String filePath) {//获取文件中的内容
try {
File file = new File(filePath);
if(file.isFile() && file.exists()) {
InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "utf-8");
BufferedReader br = new BufferedReader(isr);
String lineTxt = null;
while ((lineTxt = br.readLine()) != null) {
System.out.println(lineTxt);
}
br.close();
} else {
System.out.println("文件不存在!");
}
} catch (Exception e) {
System.out.println("文件读取错误!");
}
}
public static void main(String[] args) {
String filePath = "D:\\test\\我.txt";
readTxt(filePath);
}
File[] list = file.listFiles();//list获取的结果:[D:\qrcodeFile\20190116, D:\qrcodeFile\20190117]//文件遍历
if (list.length == 0) {
System.out.println(file.getAbsolutePath() + " is null");
} else {
for (int i = 0; i < list.length; i++) {
isDirectory(list[i]);
}
}
}