【发布时间】:2019-11-09 14:28:58
【问题描述】:
我有一个文件如下,
b | b | c
aaaaaaaa | b | c
1,2,3
10000,3,4,
我想将它与两个分隔符对齐,即| 和,。预期的输出文件是
b | b | c
aaaaaaaa | b | c
1, 2, 3
10000, 3, 4,
可以用任何简单的命令来完成吗?命令不应干扰文件中的其他文本(不包含该分隔符)。
【问题讨论】:
-
如果行包含两个分隔符怎么办?具有相同分隔符的行是否总是相邻?
-
欢迎来到 Stack Overflow。 SO 是一个面向专业和爱好者程序员的问答网站。目标是您将一些自己的代码添加到您的问题中,以至少显示您为解决这个问题所做的研究工作。
-
"可以使用任何简单的命令来完成吗?" -- 我不这么认为,考虑到需要做什么--- 要么:阅读整个文件在中,并在此过程中找到每列的最大宽度;然后写出来,现在知道每个字段应该有多宽;或者:遍历文件以找到那些最大宽度,然后再遍历文件以读取一行并用正确的字段宽度写出,到一个新文件,您最终将移过原始文件(这种方法的优点:您永远不会读取 整个 文件,一次总是一行)。