为了账号安全,请及时绑定邮箱和手机立即绑定

write只写一个字节,为啥写个中文指针进2

视频里写“中”字那一段指针到12了?为什么

正在回答

3 回答

gbk编码会将一个汉字转成2个字节

而RandomAccess中write(byte[])方法内部调用了wrietBytes()方法,wrietBytes这个方法会将字节数组写入文件。

public void write(byte b[]) throws IOException {
    writeBytes(b, 0, b.length);
}

wrietBytes方法是jvm调用c/c++程序的接口,没有跟到源码...


0 回复 有任何疑惑可以回复我~

同问。。

0 回复 有任何疑惑可以回复我~
#1

我爱孙佳怡 提问者

一个中文两个字节,write一次只写一个字节,写个中文写了两次,所以指针进2
2019-05-26 回复 有任何疑惑可以回复我~
#2

幕布斯5352958 回复 我爱孙佳怡 提问者

中文什么时候写了两次?
2019-10-05 回复 有任何疑惑可以回复我~

因为一个汉字两个字节

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

write只写一个字节,为啥写个中文指针进2

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信