我们正在将一些delphi应用程序迁移到基于web的应用程序,在此期间,一些应用程序正在这两种应用程序中运行。在这种情况下,web应用程序可以正确地读取delphi应用程序编写的换行符,但是delphi应用程序在web应用程序中保存文本时忽略了换行符。据我所知,delphi应用程序 #$D#$A 在任何一行的末尾。在数据库表中,这些 CR LF .当web应用程序保存保存文本块时,换行符变为 #$A 当德尔福阅读时。在数据库中,这些 CR LF 思想?
#$D#$A
CR LF
#$A
wqnecbli1#
你说“数据库显示”,但它实际上可能是你用来检查这个数据库的工具。我在oracle和pl/sql developer中遇到过一个问题,数据库中的换行符实际上是unix换行符(只是linefeed、lf、$a、\n,不管您喜欢哪种表示形式),但是数据库工具将其转换为运行在其上的客户端(windows),因此它将它们显示为cr lf。您的工具也可以这样做。德尔福并没有做这种神奇的翻译,实际上只是把它们当作lf来读。因此,要获得特定类型的换行符,您必须一致地存储这些值,或者在从数据库读回这些值时动态地进行转换。在delphi中可以使用 AdjustLineBreaks 对于该转换,在保存之前或获取之后(或两者)。
AdjustLineBreaks
1条答案
按热度按时间wqnecbli1#
你说“数据库显示”,但它实际上可能是你用来检查这个数据库的工具。我在oracle和pl/sql developer中遇到过一个问题,数据库中的换行符实际上是unix换行符(只是linefeed、lf、$a、\n,不管您喜欢哪种表示形式),但是数据库工具将其转换为运行在其上的客户端(windows),因此它将它们显示为cr lf。您的工具也可以这样做。
德尔福并没有做这种神奇的翻译,实际上只是把它们当作lf来读。
因此,要获得特定类型的换行符,您必须一致地存储这些值,或者在从数据库读回这些值时动态地进行转换。
在delphi中可以使用
AdjustLineBreaks
对于该转换,在保存之前或获取之后(或两者)。