Rで複数行のメッセージを印刷しようとしています。たとえば、
print("File not supplied.\nUsage: ./program F=filename",quote=0)
出力を取得します
File not supplied.\nUsage: ./program F=filename
希望の代わりに
File not supplied.
Usage: ./program F=filename
Rで複数行のメッセージを印刷しようとしています。たとえば、
print("File not supplied.\nUsage: ./program F=filename",quote=0)
出力を取得します
File not supplied.\nUsage: ./program F=filename
希望の代わりに
File not supplied.
Usage: ./program F=filename
回答:
への代替cat()
はwriteLines()
:
> writeLines("File not supplied.\nUsage: ./program F=filename")
File not supplied.
Usage: ./program F=filename
>
利点は、メッセージの後に改行を取得する"\n"
ためcat()
に渡された文字列にを追加することを覚えておく必要がないことです。たとえば、上記を同じcat()
出力と比較します。
> cat("File not supplied.\nUsage: ./program F=filename")
File not supplied.
Usage: ./program F=filename>
そして
> cat("File not supplied.\nUsage: ./program F=filename","\n")
File not supplied.
Usage: ./program F=filename
>
その理由は、print()
あなたがやりたいことはありませんつまりprint()
、あなたはショーにRレベルからオブジェクトのバージョン-この場合には、それは文字列です。文字列を表示するには、cat()
およびなどの他の関数を使用する必要がありwriteLines()
ます。「バージョン」とは、印刷された数値の精度が低下し、印刷されたオブジェクトに追加情報が追加される場合があるためです。
また、writeLinesを使用すると、を使用して「\ n」改行文字を省くことができますc()
。のように:
writeLines(c("File not supplied.","Usage: ./program F=filename",[additional text for third line]))
これは、上記の[3行目の追加テキスト]のように、固定入力と可変入力を組み合わせた複数行メッセージを記述する場合に役立ちます。