我知道Foxpro中的换行符是CHR(10)+ CHR(13),但是当创建逗号分隔的导入记录时,我需要将换行符嵌入到字段中,当我添加CHR(10)+ CHR时(13)在.txt文件中,它将实际换行符放入导入记录而不是嵌入。
您可以给我的任何语法示例:
**这个例子不起作用!我可以举例说明如何正确嵌入这些换行符吗? Sam Jenkins + CHR(13)+ CHR(10)+ Address1 + CHR(13)+ CHR(10)+ Address2
谢谢 - 埃文
答案 0 :(得分:0)
也许我不理解操作问题但......
ASCII编码:
CHR(10)= Newline / Linefeed
CHR(13)=回车
大多数文本文件查看器会在遇到CHR(13)CHR(10)时将光标向下移动一行并向左移动。您的文件可能是正确的,只是无论您使用什么来查看它都尊重字符。如果文本是封闭的引用并且查看者尊重该文本,则可能获得所需的显示,否则查看器将无法知道何时嵌入CrLf或实际行结束。
答案 1 :(得分:0)
对不起,你不会把代表换行+回车的文本文件当作其他东西。我建议采取某种解决方法。也许你可以像C一样对它们进行编码,“\ n”可以在VFP和文本文件中正常工作。您必须在消费应用程序中对其进行解码。
你的具体例子似乎很奇怪。如果我正在编写逗号分隔文件,我会用逗号“Name,Addr1,Addr2”而不是lfcr分隔字段。然后VFP将使用x type csv的简单追加来导入它。
如果你试图从一个文件中读取字段分成不同的行,你将不得不做更多的工作。如果幸运的话,该文件总是使用相同数量的字段,您只需计算行号就可以知道您所在的字段。 (第1行是名称,第2行是addr1,第3行是addr2,第4行是city-state-zip,第5行是下一个名字......)如果是这种情况,我会使用循环和一些局部变量,然后将它们收集到一个空白表行。