getline

    -2熱度

    3回答

    假設我有閱讀以下輸入: dog ogday cat atcay pig igpay froot ootfray loops oopslay str1 str2 atcay ittenkay oopslay 所以我無法單獨存放所有字符串。 繼承人我可以拿出代碼的一部分。 while(1) { getline(cin,s); if(s.empty())

    1熱度

    1回答

    我試圖比較逐行讀取文件的性能。第一種情況是getline for string和istream,第二種情況是getline for char *和FILE *。我想知道: 爲什麼第一種情況太慢了? 是否有可能使C++代碼段更快? 考慮輸出下面(ifstream的第一): Lines count: 10628126 ifstream getline: 43.2684 Lines count: 1

    4熱度

    3回答

    我遇到了使用C++從文件讀取msg的問題。通常人們做的是創建一個文件流,然後使用getline()函數來獲取味精。 getline()函數可以接受一個額外的參數作爲分隔符,以便它返回由新分隔符分隔的每個「行」,但不是默認的「\ n」。但是,這個分隔符必須是char。在我的用例中,msg中的分隔符可能與「| - |」類似,所以我嘗試獲得解決方案,以便它接受字符串作爲分隔符而不是char。 我已經搜索

    1熱度

    2回答

    給定一個文件test.txt具有以下內容內執行bash命令: ABC DEF GATTAG GHK ABC DEF GGCGTC GHK ABC DEF AATTCC GHK 第3列需要被修改,從而使該字符串是反向互補。部分原因可以用一個bash命令來完成: cat test.txt | cut -f3 | rev | tr ATGC TACG CTAATC GACGCC GGAATT

    1熱度

    1回答

    我看了其他的例子,但我不能讓這一個工作。 我有一個文件,在某些時候有奇怪的字符,例如:「Äèîpg」 我不想保存這一行,因爲它似乎與getline的循環將停止在那裏(它存儲,直到與垃圾的行)。我怎麼能這樣做?我知道發生這種情況時:「key = 0」,下一行將會有這些字符「Äèîpg」。 這裏是我的代碼: file = "example.log"; ifstream f(file);

    0熱度

    1回答

    我有這樣的簡單的代碼分割製成由&符號分隔等式的字符串: std::string cmd = "par1=1&par2=ciao&par3=1.2e4" std::stringstream ss(cmd); std::string argdef; std::vector<std::string> pairs(0); while (std::getline(ss, argdef, '&')

    1熱度

    1回答

    當我逐行讀取文件時,我注意到了一些奇怪的行爲。如果文件以\n(空行)結尾,則可能會跳過...但並非總是如此,我不明白是什麼讓它跳過或不跳過。 我寫了這個小功能,將字符串分割線重現輕鬆的問題: std::vector<std::string> SplitLines(const std::string& inputStr) { std::vector<std::string> lines;

    0熱度

    1回答

    我試圖訪問一個文件,在某個時候有很多亂碼的文字。我知道這發生在特定行之後(如果使用getline:「key = 0」發現此字符串)。我的目標是擺脫它,用一個字符串替換整行,即。 「你好」,或強制讓最後的字符具有該字符。我該怎麼做?你以前面對過嗎?在這裏,我解釋我的code,但它到目前爲止還沒有解決這個問題。似乎在行尾沒有\ n,或者有一個字符不能被讀取。基本上,我想以編程方式做我會用文本「全部替換

    -4熱度

    1回答

    我在Java中經歷了十年之後迴歸C++,現在我已經堅持了兩個星期了,我看到很多有getline問題的帖子,這些讓我添加了很多「cout」試圖找到確切的錯誤,我已經發現了錯誤,失敗和eof位,但仍然存在相同的問題.getline不填充字符串或進入while循環。 不知道如果它很重要,但我在NetBeans中編寫Win7 PC和編譯/運行在rasberry pi(運行raspbian(Debian,我

    1熱度

    1回答

    我試圖從存儲到字符串中的文件開始計算行的開始處的空格' '。 問題是,我不知道如何告訴std::getline()停止時發現任何字符不同於' '。 std::getline(file_input, string_target, 'Any_character_except_space');