file_lines()
IDLの機能に問題があります。emacsバッファ内でコマンドを使用して確認したように、27000行のASCIIデータファイルがありますgrep -c "."
。ただし、file_lines()
81807 行の値を返します。関数はこのコードと同等です (http://idlastro.gsfc.nasa.gov/idl_html_help/FILE_LINES.html)
FUNCTION file_lines, filename
OPENR, unit, filename, /GET_LUN
str = ''
count = 0ll
WHILE ~ EOF(unit) DO BEGIN
READF, unit, str
count = count + 1
ENDWHILE
FREE_LUN, unit
RETURN, count
END
私の最初の本能は、かなり長い行 (最大 231 文字) が IDL 文字列変数の文字数の制限に切り捨てられているということでしたが、IDL 文字列はおそらく 2147483647 (2.1 GB) 文字の長さ (http://idlastro.gsfc.nasa.gov/idl_html_help/Overview_of_Strings.html)
何が間違っている可能性があるかについて何か提案はありますか?