0
fs.writeFile('message.txt', 'Hello Node', function (err) {
  if (err) throw err;
  console.log('It\'s saved!');
});

Nodeでの関数の使用と、fs.writeFile()文字列をテキストファイルに出力するという事実について質問があります。

現時点では、以下をコンソールに出力するコードがあります。コンソールの代わりに、テキストファイルに出力されるようにコードを少し変更したいと思います。

var options = {
  host: 'www.google.com',
  path: '/'
};

http.get(options, function(response) {
  console.log("Status Code: " + response.statusCode);

  for(var item in response.headers) {
    console.log(item + ": " + response.headers[item]);
  }

に置き換えたいconsole.logのですが、入力fs.writeFileの一部が文字列です。したがって、私はこの部分で立ち往生しています。Hello Nodefs.writeFile()

Node.jsのfs.writeFile()のドキュメントは次のとおりです:http://nodejs.org/api/fs.html

ドキュメントで説明されているように、これはfs.writeFile関数がどのように機能するかfs.writeFile(filename, data, [encoding], [callback])です。私の質問はdata入力に関するものです。

私はNode.jsにかなり慣れていないので、これについてフィードバックをもらいたいと思います。うまくいけば、いくつかのポインターを使って解決策を自分で解決したいと思います。

編集1:String()を使用して、関数を文字列に変換しますか?これは正しくないと思いますが、可能性はあります。

4

1 に答える 1

0

これはそれを解決したコードです:

http.get(options, function(res) {
  fs.appendFile('log.txt', "Status Code: " + res.statusCode + "\n");

  for(var item in res.headers) {
    fs.appendFile('log.txt', item + ": " + res.headers[item] + "\n");
  }
}).on('error', function(e) {
  console.log("Error: " + e.message);
});

fs.appendFile を使用しました

于 2013-02-19T20:04:56.883 に答える