关于文件数据存放方式,字节&字符

时间:2023-01-11 18:45:34
在文件当中貌似是以字符来记大小
如:1234567890 10个字符为10个字节
但如果本意是存放整数1234567890,内存意义下空间应为4个字节
求问:如何能在文件当中以对应字节存放数据,即如内存空间般,1234567890是4字节,而非10字节

5 个解决方案

#1


这个问题高端了。
我觉得把 ,文件其实是二进制流,内存占用多少要看文件系统怎么做了。
我只知道数据库可以满足你的要求。

#2


你如果是往文件里面写入一个整形数字,那就是占用4个字节,如果是一个字符串,那就是字符串的长度。

#3


按字符存储,就是一个字符一个字节,如果按int型存储,32位系统就占4字节,如果超出了int范围,可以自己定义一种存储方式,只要你能解析出来就行了,甚至可以参考一些压缩算法

#4


引用 3 楼 bdmh 的回复:
按字符存储,就是一个字符一个字节,如果按int型存储,32位系统就占4字节,如果超出了int范围,可以自己定义一种存储方式,只要你能解析出来就行了,甚至可以参考一些压缩算法

文件系统中,如果将一个int类型的数放到文件当中貌似还是默认转换成字符串形式,即数有多长就占几个字节

#5


没有那么复杂,如果你是用2进制方式打开文件,就可以写整数,如果是文本方式打开,就只能存数字的ascii码

#1


这个问题高端了。
我觉得把 ,文件其实是二进制流,内存占用多少要看文件系统怎么做了。
我只知道数据库可以满足你的要求。

#2


你如果是往文件里面写入一个整形数字,那就是占用4个字节,如果是一个字符串,那就是字符串的长度。

#3


按字符存储,就是一个字符一个字节,如果按int型存储,32位系统就占4字节,如果超出了int范围,可以自己定义一种存储方式,只要你能解析出来就行了,甚至可以参考一些压缩算法

#4


引用 3 楼 bdmh 的回复:
按字符存储,就是一个字符一个字节,如果按int型存储,32位系统就占4字节,如果超出了int范围,可以自己定义一种存储方式,只要你能解析出来就行了,甚至可以参考一些压缩算法

文件系统中,如果将一个int类型的数放到文件当中貌似还是默认转换成字符串形式,即数有多长就占几个字节

#5


没有那么复杂,如果你是用2进制方式打开文件,就可以写整数,如果是文本方式打开,就只能存数字的ascii码