Как исправить искаженные символы MFC CStdioFile и CString при чтении и обработке данных в файлах? ⇐ C++
Как исправить искаженные символы MFC CStdioFile и CString при чтении и обработке данных в файлах?
Сообщество Visual Studio 2019 и MFC
Мой код:
void CTMCVDlg::FileIO() { // Получение пути к исходному файлу для чтения и пути к целевому файлу для записи CString путь назначения, путь к источнику, имя_назначения; GetDlgItemText (IDC_EDIT1, исходный путь); GetDlgItemText (IDC_EDIT1, путь назначения); GetDlgItemText (IDC_EDIT2, имя_назначения); destpath = GetFilePathExceptFileName (destpath); CStdioFile outF(destpath + destname + _T(".osu"), CFile::modeWrite | CFile::modeCreate); CStdioFile inF (исходный путь, CFile::modeRead | CFile::typeBinary); // Журнал операций AppendText3(_T("Файл создан и открыт \"") + имя файла + _T(".osu\"")); AppendText3(_T("Преобразование...")); /* * Я хочу прочитать исходный файл построчно, и когда я встречаю строку с «TimingPoints», цикл останавливается. * szline: читать файл построчно * temp: специальная строка для исключения обычных опций * аа: не используется */ CStringW szline = _T(""); CString temp = _T(""); CStringA аа = ""; в то время как (inF.ReadString(szline)) { AppendText3(szline); // Просто отлаживаем то, что он прочитал if (szline.Find(_T("Mode:")) != -1) // Если встречается строка, содержащая 'Mode:', то напишите 'Mode: 3' { temp = _T("Режим: 3"); outF.Write(temp, temp.GetLength()
Сообщество Visual Studio 2019 и MFC
Мой код:
void CTMCVDlg::FileIO() { // Получение пути к исходному файлу для чтения и пути к целевому файлу для записи CString путь назначения, путь к источнику, имя_назначения; GetDlgItemText (IDC_EDIT1, исходный путь); GetDlgItemText (IDC_EDIT1, путь назначения); GetDlgItemText (IDC_EDIT2, имя_назначения); destpath = GetFilePathExceptFileName (destpath); CStdioFile outF(destpath + destname + _T(".osu"), CFile::modeWrite | CFile::modeCreate); CStdioFile inF (исходный путь, CFile::modeRead | CFile::typeBinary); // Журнал операций AppendText3(_T("Файл создан и открыт \"") + имя файла + _T(".osu\"")); AppendText3(_T("Преобразование...")); /* * Я хочу прочитать исходный файл построчно, и когда я встречаю строку с «TimingPoints», цикл останавливается. * szline: читать файл построчно * temp: специальная строка для исключения обычных опций * аа: не используется */ CStringW szline = _T(""); CString temp = _T(""); CStringA аа = ""; в то время как (inF.ReadString(szline)) { AppendText3(szline); // Просто отлаживаем то, что он прочитал if (szline.Find(_T("Mode:")) != -1) // Если встречается строка, содержащая 'Mode:', то напишите 'Mode: 3' { temp = _T("Режим: 3"); outF.Write(temp, temp.GetLength()
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Некоторые символы Юникода приводят к преждевременному сбою CStdioFile EOF.
Anonymous » » в форуме C++ - 0 Ответы
- 55 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как удалить искаженные символы в строках, вызванные потерей байтов в PHP?
Anonymous » » в форуме Php - 0 Ответы
- 17 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как удалить искаженные символы в строках, вызванные потерей байтов в PHP?
Anonymous » » в форуме Php - 0 Ответы
- 16 Просмотры
-
Последнее сообщение Anonymous
-