Java “如何在Windows中写入文件”;文本模式";?-有什么区别?
我试图使用大容量插入将CSV文件导入SQL Server 现在我不断地得到一个错误 批量加载失败。数据文件中第1行第6列的列太长。验证是否正确指定了字段终止符和行终止符 但是,首先我运行了一些java代码,使用regex删除所有不可打印的字符,并在每行末尾显式地放一个“\n”(并将整个数据插入一个新文件)。但即使在这之后,进口也出现了上述错误 然而,我在Textpad中打开文件,看到它被保存为“Unix”文件——我只是将其更改为“Windows”文件格式,然后保存了它——然后导入工作开始了 我想知道的是Unix和Windows文件格式之间的差异,这样我就可以在java代码中解决这个问题,而不是打开Unix文件并以Windows文件格式再次保存它 编辑-- 这是给出上述错误的代码---Java “如何在Windows中写入文件”;文本模式";?-有什么区别?,java,file,text,newline,Java,File,Text,Newline,我试图使用大容量插入将CSV文件导入SQL Server 现在我不断地得到一个错误 批量加载失败。数据文件中第1行第6列的列太长。验证是否正确指定了字段终止符和行终止符 但是,首先我运行了一些java代码,使用regex删除所有不可打印的字符,并在每行末尾显式地放一个“\n”(并将整个数据插入一个新文件)。但即使在这之后,进口也出现了上述错误 然而,我在Textpad中打开文件,看到它被保存为“Unix”文件——我只是将其更改为“Windows”文件格式,然后保存了它——然后导入工作开始了 我想
请参阅-*IX是\n(左前),Windows是\r\n(CRLR)-这是唯一的区别。有关如何更改终止符,请参见;现在,它一直在读取,因为它从未找到这样的字符对。@pst请参阅我的编辑…即使将行终止符设置为“仅”\n,我也会收到错误?似乎没有道理?谢谢……奇怪的是,我希望这能奏效:-/
BULK INSERT GooglePatentsIndividualDec2012.dbo.patent
FROM 'C:\Arvind_gpd\patents\4patents_corrected.csv'
WITH
(
DATAFILETYPE = 'char',
FIELDTERMINATOR = '^',
ROWTERMINATOR = '\n'
);