|
|
1
1
因此,一种相当快速的读取方法是使用缓冲文件流。如果不进行浮点分析,在我的机器上读取需要14秒….74秒的ish和float解析(我只是总结了一下,因为我没有统一性可玩)
出于兴趣,我还修改了代码,将数据作为一个浮动流(三元组)写入。 读入
大约需要9秒 为了完整起见,我使用以下代码生成演示文件。
|
|
|
2
1
这可能是个愚蠢的问题,但为什么不直接扫描并保存到二进制或.ply文件中呢?甚至扫描并保存到网格或某些体素化样式网格中 您还可以查找中使用的方法 this 特别是项目 PlyImporter.cs |
|
|
3
0
如果读取速度很慢,那么读取、写入不同的文件格式,然后再从该文件读取数据的速度会更慢。你只是在给已经很慢的事情添加更多的动作…也许你应该看看如何改变你从文本文件中读取的方式。 如果您不熟悉如何使用内置库在C中进行序列化/反序列化,则应首先阅读以下内容: https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/serialization/ 下面是一个演示如何实现二进制序列化的链接: https://docs.microsoft.com/en-us/dotnet/api/system.runtime.serialization.formatters.binary.binaryformatter?view=netframework-4.7.2
但是,如果不编写初始文件,只需编写一个自定义反序列化程序(这基本上就是您所做的——不需要实现相关的.NET模式)。也许可以尝试使用
另外,值得一看这个库,它可以帮助您完成此任务: FileHelpers -看看这个例子: https://www.filehelpers.net/example/QuickStart/ReadFileDelimited/ |
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |