gpt4 book ai didi

android - 二进制与文本文件 I/O 的速度差异是多少?

转载 作者:太空宇宙 更新时间:2023-11-03 11:41:30 25 4
gpt4 key购买 nike

我正在开发一个将数据存储在文件中的金融应用程序。我注意到文本文件输入/输出非常慢。如果我切换到二进制格式,它会快多少? 2倍? 10倍?我可以编写自己的计时测试,但我希望其他人已经完成了。提前致谢。

最佳答案

瓶颈在于将数据移入/移出磁盘。无论是文本还是二进制都不是真正的问题;您需要做的是尽量减少数据量。

如果您的数据包含大量数值,您可能会看到一些显着的节省。例如,数字 1234567890 是十个字节的文本,但可以放入一个四字节的二进制整数中。但是,请注意值 1 只是文本的一个字节,但在二进制 int 中仍需要四个字节。

您可能还想考虑在文本和二进制文件之间转换所花费的时间。读取和写入“原始”整数和 double 组比转换文本和从文本转换更快,但是您需要担心字节顺序、不同平台/编译器的大小差异、结构填充等。

因此,您需要查看应用程序的数据,以确定它是否会在二进制编码中显着变小,以及在格式之间转换数据时涉及哪些问题。

另一个大问题是随机访问时固定大小与可变大小的记录。如果记录的大小是固定的,那么很容易找到文件中的第 N 条记录。如果它们的大小是可变的,那么在读取记录 N 之前,您可能必须读取和解析记录 1 到 N-1。

关于android - 二进制与文本文件 I/O 的速度差异是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3476855/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com