使用sed将文本文件转换为C字符串

Ale*_*nik 6 c c++ sed

我想使用sed替换文本文件中的换行符,制表符,引号和反斜杠,以便在C中将其用作char常量,但我在开始时就丢失了.在输出中维护换行符会很好,添加一个'\n',然后是双引号来关闭文本行,一个crlf,另一个双引号来重新打开该行,例如:

一号线

2号线

会成为

"一号线\n"

"2号线\n"

任何人都可以至少指出我正确的方向吗?谢谢

Aln*_*tak 10

试试这个作为sed命令文件:

s/\\/\\\\/g
s/"/\\"/g
s/  /\\t/g
s/^/"/
s/$/\\n"/
Run Code Online (Sandbox Code Playgroud)

注意:如果vi按下使用插入,第三行中有一个嵌入的选项卡^v <tab>

  1. s/\\/\\\\/g - 逃回反斜杠
  2. s/"/\\"/g - 逃避报价
  3. s/ /\\t/g - 转换标签
  4. s/^/"/ - 前置报价
  5. s/$/\\n"/ - 追加\n和引用