已采纳回答 / Old_dai
直接子目录的抽象就是文件夹的路径,视频里说的子目录就是文件夹的意思。dir.list()返回的是文件和文件夹的名称,返回字符串数组;二dir.listFiles()返回的是文件和文件夹的路径,返回File对象
2017-01-01
都是一样的东西,字符流是对文件的操作,字节流可以是任意类型的。其实不管是InputStreamReader还是BufferedReader都是对字节流FileinputStream的封装 让我们使用起来更加方便
也可以自己使用byte与编码集来自己转换,将字节流转换成字符串
也可以自己使用byte与编码集来自己转换,将字节流转换成字符串
2016-12-29
public int read(byte[] b)
throws IOException
The number of bytes actually read is returned as an integer.
read()返回的是steam流的下一个byte,将下一个byte转成int返回,read(byte[])返回的是steam流中读取到的字节的个数.
所以int b = read() 和 int b = read(byte[])返回值完全是两回事。
throws IOException
The number of bytes actually read is returned as an integer.
read()返回的是steam流的下一个byte,将下一个byte转成int返回,read(byte[])返回的是steam流中读取到的字节的个数.
所以int b = read() 和 int b = read(byte[])返回值完全是两回事。
2016-12-29
dos.writeInt(10);
dos.writeUTF("中国");
dos.writeInt(10);
dos.writeChars("中国");
dos.flush();
dos.close();
IOUtil.printHexString(fileName);
===============
00 00 00 0a 00 06 e4 b8 ad e5
9b bd 00 00 00 0a 4e 2d 56 fd
===============
00 06 这两个字节表示的是该字符串所占用的字节数,与字符串无关。
dos.writeUTF("中国");
dos.writeInt(10);
dos.writeChars("中国");
dos.flush();
dos.close();
IOUtil.printHexString(fileName);
===============
00 00 00 0a 00 06 e4 b8 ad e5
9b bd 00 00 00 0a 4e 2d 56 fd
===============
00 06 这两个字节表示的是该字符串所占用的字节数,与字符串无关。
2016-12-26
dos.writeUTF("中国");
dos.writeChars("中国");
4e 2d 56 fd 00 06 e4 b8 ad e5 9b bd
老师讲得似乎有问题?有大神可以解释下吗
dos.writeChars("中国");
4e 2d 56 fd 00 06 e4 b8 ad e5 9b bd
老师讲得似乎有问题?有大神可以解释下吗
2016-12-26
最赞回答 / 头发多
00 06 ---> 这两字节表示的是字符串s占6个字节 ( String s = dis.readUTF(); )e4 b8 ad e5 9b bd --->"中国"的utf-8编码4e 2d 56 fd --->"中国"的utf-16be编码
2016-12-26