【发布时间】:2016-07-13 18:57:40
【问题描述】:
与其他“编辑文本文件”问题相比,我的问题略有不同。例如,我有以下文本文件:
Cal Test
{
Feature 0.0 1.0 2.0 7.5
Feature 0.0 -1.0 2.0 -7.5
.etc
}
假设我在这个文本文件中有大约一百行Feature。本质上,数字代表数据点;所以前两个数字代表数据点:(0.0, 1.0),第二对代表第二个数据点:(2.0, 7.5);它表示另一个程序中的一行,它接收文本文件。
我想做的是将每个数据点逆时针旋转 90 度;这意味着(a, b) → (b, -a)。我知道如何做到这一点,逐行阅读并编辑点,我想知道,是否有更有效的方法来交换(a,b)并附加负片?
【问题讨论】:
-
您想每行旋转整个特征集吗?所以第一个是 (1.0, -0.0, 7.5, -2.0)?
-
与您建议的读取每一行、解析并以直接和简单的方式进行更改相比,再多的微优化都不会显着提高性能。如果您有 10 亿行,甚至可能有一百万行,则可能需要进行某种优化(这很可能围绕您如何管理文件 IO 和内存)。
-
@keyboardP 是的,没错
标签: c# text text-files editing