我有寫出每當拍攝照片時照相機在幀號和當前系統時間的程序:C++奇怪的字符出現
SYSTEMTIME st;
GetSystemTime(&st);
lStr.Format(_T("%d %d.%d.%d.%d\r\n"),GetFrames() ,st.wHour, st.wMinute, st.wSecond, st.wMilliseconds);
std::wfstream myfile;
myfile.open("test.txt", std::ios::out | std::ios::in | std::ios::app);
if (myfile.is_open())
{
myfile.write((LPCTSTR)lStr, lStr.GetLength()*sizeof(TCHAR));
myfile.close();
}
else {lStr.Format(_T("open file failed: %d"), WSAGetLastError());
}
的文本文件,該程序輸出似乎正確地寫入數據,但是我得到的空格和字符不應該在每行的開頭。該網站似乎並沒有正確地格式化的空間,所以我會後一幅畫,這是文本文件的樣子。該文件還有時顯示除了零之外的項目符號點。
正如你所看到的第一行是不錯,但它似乎變得更糟的時間越長我寫的文本文件。該程序每秒鐘向該文件寫入約10次。我是C++的新手,我不確定可能會導致這種情況。我試圖尋找類似的其他問題,但他們似乎沒有我正在尋找的解決方案。任何幫助,將不勝感激。
是什麼GetFrames返回?詮釋? –
我懷疑它是在該行的末尾的'\ r \ N'。正如你在文本格式打開它(IE,而不是二進制)\ n將被自動轉換爲「\ r \ n」在Windows上。 –
這是一個DWORD,我應該使用一個DWORD? – oodan123