File file = new File("C://1.txt"); file.creatNewFile();//创建新的文件,返回值为boolean file.mkdir();//创建新的文件夹,返回值为boolean File a = new File("C://1.txt","a.txt");//在文件夹中创建文件 File b = new File("file","b.txt"); a.delete;//删除 getAbsolutePath;//文件路径
IO流
字节流:一切皆字节
-输入流: InputeStream
-输入流: OutputStream
字符流:
-输入流:Reader
-输出流:Writer
OutputStream方法:
close();//关闭 flush();//刷新 write(byte[] b);//写入 write(byte[] b,int off,int len);//从 off开始写入,写len个内容; write(int b);//将指定的字节写入此输出流
FileOutputStream:
构造方法: FileOutputStream(File file); 创建文件输出流以写入由指定的 File对象表示的文件。 FileOutputStream(FileDescriptor fdObj); 创建要写入指定文件描述符的文件输出流,该文件描述符表示与文件系统中实际文件的现有连接。 FileOutputStream(File file, boolean append); 创建文件输出流以写入由指定的File对象表示的文件,append默认为true;表示在后方追加,否则表示为清空过后重写。 FileOutputStream(String name); 创建文件输出流以写入具有指定名称的文件。 FileOutputStream(String name, boolean append); 创建文件输出流以写入具有指定名称的文件 FileOutputStream fos = new FileOutputStream("c://a.text"); FileOutputStream fos = new FileOutputStream("c://a.text",true);
InputStream方法:
close(); read();//从输入流中读取下一个数据字节。 read(byte[] b);//从输入流中读取一些字节数并将它们存储到缓冲区数组 b 。 返回值为int,表示读取的个数。 FileInputStream: FileInputStream(File file) 通过打开与实际文件的连接来创建 FileInputStream ,该文件由文件系统中的 File对象 file命名。 FileInputStream(String name) 通过打开与实际文件的连接来创建 FileInputStream ,该文件由文件系统中的路径名 name命名。
字符流:
FileWriter:
FileWriter fw = new FileWriter(File file, boolean append) 在给出要写入的 FileWriter下构造 File ,并构造一个布尔值,指示是否附加写入的数据。 append(char c) 将指定的字符追加到此writer。 write(int c) 写一个字符。 flush(); close();
FileReader:
FileReader fr = new FileReader("b.txt"); int c = fr.read();//读单个 fr.close(); System.out.println((char) c);//注意:要转为char FileReader fr = new FileReader("b.txt"); char[] chars = new char[100];//创建长度为100 int len =fr.read(chars);//返回长度 String text = new String(chars,0,len); //从0写到len个,转为字符串 System.out.println(text); System.out.println(text.length());//长度为数组实际长度 fr.close;
字符输出(打印流)
PrintStraem ps = new PrintStraem(c://c.text); ps.println("嘿嘿嘿1"); ps.println("嘿嘿嘿2"); ps.println("嘿嘿嘿3"); PrintWriter pw = new PrintWriter(c://c.text); pw.println("嘿嘿嘿1"); pw.println("嘿嘿嘿2"); pw.println("嘿嘿嘿3"); FileOutputStream fos = new FileOutputStream(c://c.text); PrintWriter pw = new PrintWriter(fw); pw.println("嘿嘿嘿1"); pw.println("嘿嘿嘿2"); pw.println("嘿嘿嘿3"); //缓存读取流,将字符输入流 转换为带有缓存 可以一次性读取一行的缓存字符读取流 FileReader fw = new FileReader(C://c.txt); BufferedReader br = new BufferedReader(fw); String text = br.readLine();//读取一行 System.out.println(text);
序列化与反序列化:
实现Serializable
序列化: public static void mySerialize(Object obj,String fileName) throws IOException{ OutputStream out = new OutputStream(fileName); ObjectOutputStream objOut = new ObjectOutputStream(out); objOut.writeObject(obj); objOut.close(); } 反序列化: public static Object myDeserialize(String fileName) throws IOException{ InputStream in = new InputStream(fileName); ObjectInputStream objIn = new ObjectInputStream(in); Object obj = objIn.readObject(); objIn.close(); return obj; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)