-
java.io.File类用于表示文件(目录) File类只用于表示文件(目录)的信息(名称、大小等),不能用于文件的访问。 创建File对象 File file = new File("E:\\javaio");//注意“\”的转义用"\"。 判断文件的存在是否用file.exists();返回boolean类型 创建文件用file.mkdir(); 删除目录用file.delete(); 判断是否是一个文件目录用file.isDirectory();返回boolean类型 判断是否是一个文件用file.isFile();返回boolean类型 创建文件用file.createNewFile();会产IO异常 直接打印file其实是调用file.toString()的内容,和打印file.getAbsolutePath()内容相同。 获得文件的名字用file.getName() 获得父目录用file.getParent() 创建多级目录用file.mkdirs()查看全部
-
gbk编码中文占2个字节,英文占1个字节, utf-8编码,中文占用3个字节,英文占用1个字节 java是双字节编码utf-16be 该编码中文和英文都是2个字节 当字节序列是某种编码时,这个时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码 文本文件可以是任意编码的字节序列 如果在中文机器上直接创建文本文件,那么该文本文件只认识ANSI编码查看全部
-
java.io.File类用于表示文件(目录) File类只用于表示文件(目录)的信息(名称、大小等),不能用于文件的访问。 创建File对象 File file = new File("E:\\javaio");//注意“\”的转义用"\"。 判断文件的存在是否用file.exists();返回boolean类型 创建文件用file.mkdir(); 删除目录用file.delete(); 判断是否是一个文件目录用file.isDirectory();返回boolean类型 判断是否是一个文件用file.isFile();返回boolean类型 创建文件用file.createNewFile();会产IO异常 直接打印file其实是调用file.toString()的内容,和打印file.getAbsolutePath()内容相同。 获得文件的名字用file.getName() 获得父目录用file.getParent() 创建多级目录用file.mkdirs()查看全部
-
gbk编码中文占2个字节,英文占1个字节, utf-8编码,中文占用3个字节,英文占用1个字节 java是双字节编码utf-16be 该编码中文和英文都是2个字节 当字节序列是某种编码时,这个时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码 文本文件可以是任意编码的字节序列查看全部
-
gbk编码中文占2个字节,英文占1个字节, utf-8编码,中文占用3个字节,英文占用1个字节 java是双字节编码utf-16be 该编码中文和英文都是2个字节 当字节序列是某种编码时,这个时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码 文本文件可以是任意编码的字节序列 如果在中文机器上直接创建文本文件,那么该文本文件只认识ANSI编码查看全部
-
1.创建File对象:File file=new File(String path);注意:File.seperater();获取系统分隔符,如:”\“ 2.boolean file.exists();是否存在. 3.file.mkdir();或者file.mkdirs();创建目录或多级目录。 4.file.isDirectory()或者file.isFile()判断是否是目录或者是否是文件。 5.file.delete();删除文件或目录。 6.getParent()父路径查看全部
-
开始2—2查看全部
-
字符流的过滤器: BufferedReader readLine 一次读一行 BufferedWriter/PrintWriter 写一行 BufferedReader br=new BuffereReader( new InputStreamReader (new FileInputStream("e:\\javaio\\imooc.txt"))); BufferedWRiter bw=new BufferedWriter( new OutputSteamWriter( new FileOutputStream("e:\\javaio\\immoc3.txt"))); PrintWriter pw=new PrintWriter("e:\\javaio\\imooc4.txt"); String line; while ((line=br.readLine())!=null){ syso -> line; bw.write(line); bw.newLine(); //换行操作 bw.flush(); //或 pw.print(line); // pw.println(line); pw.flush(); } br.close(); bw.close(); pw.close()查看全部
-
字符流 1) 编码问题 2)认识文本和文本文件 java的文本(char)是16位无符号整数,是字符的unicode编码(双字节编码) 文件是byte byte byte ...的数据序列 文本文件是文本(char)序列按照某种编码方案(utf-8,utf-16be,gbk)序列化为byte的存储结果 3)字符流(Reader Writer)---->操作的是文本文本文件 字符的处理,一次处理一个字符 字符的底层任然是基本的字节序列 字符流的基本实现 InputStreamReader 完成byte流解析为char流,按照编码解析 OutputStreamWriter 提供char流到byte流,按照编码处理查看全部
-
Zzzzz查看全部
-
IO流(输入流、输出流) 字节流、字符流 1.字节流 1)InputStream、OutputStream InputStream抽象了应用程序读取数据的方式 OutputStream抽象了应用程序写出数据的方式 2)EOF = End 读到-1就读到结尾 3)输入流基本方法 int b = in.read();读取一个字节无符号填充到int低八位.-1是 EOF in.read(byte[] buf) in.read(byte[] buf,int start,int size) 4)输出流基本方法 out.write(int b) 写出一个byte到流,b的低8位 out.write(byte[] buf)将buf字节数组都写入到流 out.write(byte[] buf,int start,int size) 5)FileInputStream--->具体实现了在文件上读取数据 6)FileOutputStream 实现了向文件中写出byte数据的方法查看全部
-
1.transient 关键字:被transient修饰的元素,该元素不会进行jvm默认的序列化 注意:在以后的网络编程中,如果有某些元素不需要传输,那就可以用transient修饰,来节省流量;有效数据序列化,无效数据就不需要序列化了,提高效率 2.被transient修饰的元素,不能进行默认的序列化,但可以自己完成这个元素的序列化 transient关键字修饰的属性默认是不能序列化的,但是可以使用writeObject自己完成这个元素的序列化。ArrayList就是用了此方法进行了优化操作。ArrayList最核心的容器Object[] elementData使用了transient修饰,但是在writeObject自己实现对elementData数组的序列化。只序列化实际有的元素,对于数组中空的元素不进行序列化。 private void writeObject(java.io.ObjectOutputStream s) throws java.io.IOException private void readObject(java.io.ObjectInputStream s) throws java.io.IOException,ClassNotFoundException查看全部
-
gbk编码中文占2个字节,英文占1个字节, utf-8编码,中文占用3个字节,英文占用1个字节 java是双字节编码utf-16be 该编码中文和英文都是2个字节 当字节序列是某种编码时,这个时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码 文本文件可以是任意编码的字节序列 如果在中文机器上直接创建文本文件,那么该文本文件只认识ANSI编码查看全部
-
3.对象的序列化,反序列化 1)对象序列化,就是将Object转化成byte序列,反之叫对象的反序列化 2)序列化流(ObjectOutputStream) ---> writeObject 反序列化(ObjectInputStream) ---> readObject 3)序列化接口(Serializable) 对象必须实现序列化接口,才能进行序列化,否则将出现异常 这个接口,没有如何方法,只是一个标准查看全部
-
(1)文件模型 (2)打开模式:“rw”和“r” (3)写方法:raf.write(int);-->只写一个字节(后8位),同时指针指向下一个位置,准备再次写入 (4)读方法:int b = raf.read();-->读一个字节 (5)关闭查看全部
举报
0/150
提交
取消