2016-11-28 3 views
-1

は、次のコマンドを想像したときにアングルブラケットからデータを取得しますか?C++実行されているファイル

私はかなり私がstd::cinを使用しなければならないと確信していますが、ここでどのように適用できるかわからない情報のためにユーザーを促す以外に。

std::string file_passed; 
std::cin >> file_passed; // prompts user 
file_passed << std::cin; // error 

回答はどこでも見つかりません...ありがとうございます。

+0

'のstd :: cinを>> file_passed'は何のためにユーザーにプロンプ​​トを表示しません。ファイルがSTDINにパイプされた場合、 'std :: cin'はファイルデータを読み込みます。 STDINがパイプ入力であるかユーザー入力であるかを知りたい場合は、プラットフォーム固有のAPIを使用してコンソールにその情報を照会する必要があります。 http://stackoverflow.com/questions/1312922/、http://stackoverflow.com/questions/6839508/などを参照してください –

答えて

2

これは、コマンドラインのリダイレクトを介して入力を取得する方法である:

std::string temp; 
// will read each word in the file in the variable temp on each loop iteration until EOF 
while (std::cin >> temp) 
{   
    // you use temp here 
    std::cout << temp << std::endl; 
} 
+0

問題がパイプで連結された引数の私の誤解から来たが.. <ファイルがファイルを与えていたことと思ったし、それは内容ではありません。 > stream.open(ファイル)と...問題に私の目を開くための おかげでそれを開くことができませんでした - 。私は、その後のfstreamストリームを実行しようとしましたとおり – TryingLikeICan

関連する問題