我有一个文件名sample.ods,行数超过9k,我需要在数据库中导入。当我在数据库中导入它时,它已成功导入,但问题是,列名描述的格式如下:
描述(烯)
这是描述
分类
- 6个设计,消防车,货车,救护车,出租车,警察和校车
尺寸(包装中):
- 9cm x 13cm x 12.5cm
产品尺寸:
- 9.5cm x 8cm x 6.5cm
重量:
- 0.140kg(包括任何包装)
当在db中导入文件时,在网站中描述为
这是描述分类: - 6 设计,消防车,货车,救护车,出租车,警察和学校 总线尺寸(包装): - 9厘米x 13厘米x 12.5厘米产品 尺寸: - 9.5厘米x 8厘米x 6.5厘米重量: - 0.140千克(包括任何 包装)
但我想要的是
这是解释
分类: - 6种设计,消防车,货车,救护车,出租车, 警察和校车
尺寸(包装中): - 9cm x 13cm x 12.5cm
产品尺寸: - 9.5厘米x 8厘米x 6.5厘米重量: - 0.140千克 (包括任何包装)
如果添加br标签代替换行符,它可以正常运行(按照我想要的方式获得结果),但是手动添加超过9k行是不对的。那么,如何在每行描述中添加br标签列代替换行符?
任何建议都表示赞赏。
提前致谢。
答案 0 :(得分:2)
您不需要替换换行符 - 无论如何它们都会被导入删除。
您只需添加<br>
代码,sed
即可轻松添加:
sed 's/$/<br>/'
ODS文件是包含多个XML文件的zip存档。我相信在提取的content.xml
文件上运行上述命令应该是安全的。该文件似乎不包含换行符,除非它们存在于数据中,因此全局替换可能会做正确的事情。
BTW,因为是 XML,你不应该使用<br/>
吗?
整个过程如下:
mkdir tmpdir
cd tmpdir
unzip /path/to/file.ods
sed --in-place 's!$!<br/>!' content.xml
zip /path/to/newfile.ods *