Чтение текстового файла, апостроф отображается как \ 325 - PullRequest
0 голосов
/ 26 мая 2018

Я искал похожую тему, но не смог ее найти (возможно, искал не ту терминологию).Но я пытаюсь читать из текстового файла по одному слову за раз, и такие слова, как Это, заменяются на \ 325s, а использование кавычек, таких как "Hello", заменяется на \ 322Hello \ 323.Кажется, это что-то тривиальное, но я не нашел ничего, чтобы решить это.Любая помощь будет принята с благодарностью.

Примечание: это личный проект, а не назначение класса

#include <iostream>
#include <fstream>
#include <string>

using namespace std;

int main() {

ifstream document ("filename.txt");
string word;

while (document >> word)
{
    cout << word << endl;
}

return 0;

}

1 Ответ

0 голосов
/ 26 мая 2018

Если текст был написан с помощью текстового процессора, есть вероятность, что такие символы, как ' и ", будут заменены соответствующими " english " открытыми и закрытыми.

В некоторых кодировках они кодируются байтами со значением, превышающим 127. \ 322 \ 323 и \ 325 (вы не указали, как вы их знаете), просматривая строку в отладчике?), Являются только восьмеричным представлением символаПрограмма, которую вы используете для их визуализации (это наблюдатель отладочной переменной?), не хочет печатать, поскольку не является простым ASCII (следовательно, зависит от кодовой страницы).

Вместо этого мы должны наблюдать за строкой с помощью отладчика,попробуйте распечатать его.

...