2014-04-06 4 views
0

숫자와 파일을 읽고 쓰려고하는 node.js 앱이 있습니다.number.js의 파일에 숫자와 문자열 작성하기

내가 현재 쓰고있어 값이 숫자 또는 문자열이 될 수 있습니다

fs.writeFileSync(myPath, value); 

. 내가 파일

fs.readFileSync(myPath,'utf-8'); 

을 읽을

나는 문자열로 파일을 얻을. 파일의 내용이 숫자인지 문자열인지 지정할 필요없이 파일을 읽을 수있는 방법이 있기를 바랍니다. 이것이 가능한가?

주위의 길은 문자열을 숫자로 변환하고 실패하는지 확인하는 것이지만 더 나은 방법이 있기를 바랍니다. 버퍼를 사용하여 fs.writeStream/fs.readStream을 사용하게되어 기쁩니다 (실제로는 바람직 할 수 있습니다). 그러나 여기에 가장 적합한 경로가 무엇인지 정확히 모르겠습니다.

답변

1

인코딩 옵션이 지정되면 readFileSync는 문자열을 반환합니다.
그렇지 않으면 버퍼를 반환합니다.

은 그래서 당신을 아무 곳에 도착하지 않도록 docs

, 당신은 일반적으로 노드에서 .toString('utf8') 사용하십시오 버퍼를 읽으려면 말한다. 즉
는 파일을 읽는 것은 내가 거기 있었으면 좋겠습니다 isNaN

var is_number = !isNaN(file_string); 
+0

전화로이 같은 쉽게, 노드의 문자열을 반환하고, 유효한 정수를하지만, 문자열이 숫자인지 확인할 수 있습니다 것입니다 좋네요,하지만'return isNaN (file_output)을 할 수 있습니까? file_output : parseInt (file_output)' – pedalpete

+1

예, parseInt의 기수를 기억할 수 있습니다! – adeneo