JSON文件没有换行符,无法将文件导入SAS

JSON文件没有换行符,无法将文件导入SAS,json,powershell,sas,wordpad,Json,Powershell,Sas,Wordpad,我有一个很大的json文件(250 Mb),在记事本或SAS中打开该文件时没有换行符。但是如果我在写字板上打开它,我会得到正确的换行符。我想这可能意味着json文件使用unix换行符,NotPad无法读取,但wordpad可以读取我所读取的内容 我需要将文件导入SAS。这样做的一种方法可能是在写字板中打开文件,将其另存为文本文件,希望保留正确的换行符,以便我可以在SAS中读取文件。我试过读取文件,但没有换行符,我只能得到第一个观察结果,无法让程序找到下一个观察结果 我曾尝试让写字板保存文件,但写

我有一个很大的json文件(250 Mb),在记事本或SAS中打开该文件时没有换行符。但是如果我在写字板上打开它,我会得到正确的换行符。我想这可能意味着json文件使用unix换行符,NotPad无法读取,但wordpad可以读取我所读取的内容

我需要将文件导入SAS。这样做的一种方法可能是在写字板中打开文件,将其另存为文本文件,希望保留正确的换行符,以便我可以在SAS中读取文件。我试过读取文件,但没有换行符,我只能得到第一个观察结果,无法让程序找到下一个观察结果

我曾尝试让写字板保存文件,但写字板每次都会崩溃,可能是因为文件大小。我也尝试过通过powershell执行此操作,但无法确定文件打开后如何保存,而且我看不出有任何理由可以工作,因为当我通过点击尝试时,写字板会崩溃

是否有其他方法修复此json文件?有没有一种方法可以查看unix代码的换行符,并用windows换行符或类似的东西替换它

编辑: 我尝试在filename和infle中添加
TERMSTR=LF
选项,但没有成功:

filename test "C:\path";
data datatest;
  infile test lrecl = 32000 truncover scanover TERMSTR=LF;
  input @'"Id":' ID $9.;
run;
但是,如果我手动编辑文件的一小部分以使其具有换行符,它就可以工作。
TERMSTR
选项似乎对我没有多大帮助

编辑2: 使用
RECFM=F

data datatest;
  infile test lrecl = 42000 truncover scanover  RECFM=F ;
  input @'"Id":' ID $9.;
run; 
编辑3:
事实证明,这并没有解决问题
RECFM=F
意味着所有记录都有一个固定的长度,而它们没有,因此我的数据被混淆,许多信息被跳过。已尝试
RECFM=V(变量)
,但这也不起作用。

我猜您正在使用windows,所以请尝试:

TYPE input_filename | MORE /P > output_filename

这应该将unix样式的文本文件替换为windows/dos文件。

250 MB的长度不足以作为一条记录处理

data want ;
  infile json lrecl=250000000; *250 Mb ;
  input @'"Id":' ID :$9. @@;
run;

查看文件名语句的文档,特别是TERMSTR=LF。您可以发布您的解决方案作为问题的答案,如果您满意,可以接受它。事实证明,我没有解决这个问题。毕竟,se edit 3JSON文件不需要有任何换行符。为什么不尝试使用RECFM=N读取它?我尝试使用RECFM=N,但得到以下警告:“@“STRING”输入/输出语句选项与二进制模式I/O不一致。正在终止数据步骤的执行。这是一条注释,而不是答案。我在程序中的何处写入此命令?在filename语句或数据步骤中?