我正在编写一些代码,将数据转储到表中。
一些数据包括回车。
最终,数据将被导出为HTML格式的电子邮件或文本文件(CSV),或两者兼而有之。我不知道该数据将使用哪种导出方法。
如果我这样写我的回车到数据库:
UPDATE SOME_TABLE
SET TEXT_VALUE = @LineOne + CHAR(13) + CHAR(10) + @LineTwo
WHERE ID = @IDValue
然后它在CSV文件中工作得很好,但是HTML电子邮件完全搞砸了-它混淆了编码,并用头和mime信息显示电子邮件,除了调试之外完全没有用处。
另一方面,如果我这样写我的回车到数据库:
UPDATE SOME_TABLE
SET TEXT_VALUE = @LineOne + '<br>' + @LineTwo
WHERE ID = @IDValue
另一种方法是-它在电子邮件中工作,但是文本文件输出的文本中嵌入了实际的“br”,如“LineOne
line2”。
有没有一种方法可以在纯文本和HTML中都生成相同结果的方式来表示回车?
所有这些都是在SQL Server 2008上从T-SQL存储过程内部运行的。
最佳答案
我认为最合适的方法是用CR LF“原样”存储所有文本,然后在从表中获取数据时进行适当的操作,即将换行转换为是否呈现html等。
关于html - 可在HTML和文本中使用的回车符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7727200/