-
File常用的API查看全部
-
创建文件两种写法 File file = new File("绝对路径"); File file = new File("文件的上一级目录","文件名");查看全部
-
在Windows下的路径分隔符和Linux下的路径分隔符是不一样的,当直接使用绝对路径时,跨平台会暴出“No such file or diretory”的异常。 比如要读一个test.txt文件 Windows下要这么写:File file1 = new File ("C:\tmp\test.txt"); Linux下则是这样的:File file2 = new File ("/tmp/test.txt"); 如果要考虑跨平台,则最好是这么写: File myFile = new File("C:" + File.separator + "tmp" + File.separator, "test.txt"); File file1=new File("e:"+File.separator);在Windows中可以看成 e:\查看全部
-
文本文件 就是字节序列 可以是任意编码的字节序列 如果我们在中文机器上直接创建文本文件,那么该文本文件只认识ANSI编码查看全部
-
当你的字节序列是某种编码时,这个时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码查看全部
-
在GBK编码中中文占用两个字节,英文占用一个字节 在UTF-8编码中中文占用三个字节,英文占用一个字节 java是双字节编码,实际使用的编码为UTF-16be,中文占用两个字节,英文占用两个字节查看全部
-
public static void printHex(String fileName)throws IOException{ FileInputStream in=new FileInputStream(fileName); int b; int i=1; while((b=in.read())!=-1)} System.out.print(Integer.toHexString(b)+" "); if(i++%10==0){ system.out.println(); }}}}查看全部
-
写一个类,只写类的功能,单独再建立一个test类用来实现。查看全部
-
if(i++%10==0){ System.out.println();}查看全部
-
public int read(byte[] b, int off, int len) throws IOException 参数: b - 存储读取数据的缓冲区。 off - 目标数组 b 中的起始偏移量。 len - 读取的最大字节数。 返回: 读入缓冲区的字节总数,如果因为已经到达文件末尾而没有更多的数据,则返回 -1 一次读取最大字节数,如果off为0,则是继续上次的读取(读取后指针会移动)查看全部
-
字节流 一、 InputStream、OutputStream 抽象了应用程序读写数据方式(父类,抽象类) FileInputStream、FileOutputStream 具体的实现了在文件中读写数据(子类) (1)DataOutputStream&DataInputStream 对"流"功能的扩展,可以更加方便的读取int,long,字符等类型数据 DataOutputStream --- writeInt()/writeDouble()/writeUTF() (2)BufferedInputStream&BufferedOutputStream 提供了带缓冲区的操作,提高了IO的性能 三者对比: FileOutputStream--->write()方法相当于一滴一滴地把水“转移”过去 DataOutputStream-->writeXxx()方法会方便一些,相当于一瓢一瓢把水“转移”过去 BufferedOutputStream--->write方法更方便,相当于一飘一瓢先放入桶中,再从桶中倒入到另一个缸中,性能提高了 二、 EOF=End 及文件结尾(in.read()=-1) 三、 输入流基本方法 read(); int b=in.read();//读取一个字节无符号填充到int的低八位,返回读取的长度,-1是EOF;适合读取小文件 in.read(byte[] buf);//读取数据填充到字节数组buf in.read(byte[] buf,int start,int size);//同上,从buf的start位置开始存放size长度的数据,适合读取大文件 四、 输出流基本方法write(); out.write(int b); //写出一个byte到流,b的低八位 out.write(byte[] buf);//将buf字节数组都写入到流 out.write(byte[] buf,int start,int size);//同上,详见read对应方法查看全部
-
实现了Serializable接口的类的事例才能够被序列化查看全部
-
ObjectOutputStream对象序列化流,被transient修饰的变量不能被序列化查看全部
-
好好好查看全部
-
InputStream、OutputStream 抽象了应用程序读写数据方式(父类,抽象类) FileInputStream、FileOutputStream 具体的实现了在文件中读写数据(子类) EOF=End 及文件结尾(in.read()=-1) 输入流基本方法 read(); int b=in.read();//读取一个字节无符号填充到int的低八位,前面的24位补零。(int是32位,一个字节8位)-1是EOF in.read(byte[] buf);//读取数据填充到字节数组buf in.read(byte[] buf,int start,int size);//同上,从buf的start位置开始存放size长度的数据 输出流基本方法write(); out.write(int b); //写出一个byte到流,b的低八位 out.write(byte[] buf);//将buf字节数组都写入到流 out.write(byte[] buf,int start,int size);//同上,详见read对应方法查看全部
举报
0/150
提交
取消