모든 라인의 시작 부분에 <item>
을 추가하고 모든 라인의 끝에 </item >
을 추가해야하는 C++ 프로젝트가 있습니다. 이 정상적인 영어 텍스트를 사용하여 잘 작동하지만이 작업을 수행 할 싶습니다 중국어 텍스트 파일이 있지만 작동하지 않습니다. 나는 일반적으로 .txt 파일을 사용하지만이 경우 .rtf를 사용하여 중국어 텍스트를 저장해야합니다. 코드를 실행하면 횡설수설하게됩니다. 여기에 예제가 있습니다.C++ 텍스트 파일, 한자
{\ rtf1 \ adeflang1025 \ ANSI \ ansicpg1252 \ UC1 \ adeff31507 \ deff0 \ stshfdbch31506 \ stshfloch31506 \ stshfhich31506 \ stshfbi31507 \ deflang1033 \ deflangfe1033 \ themelang1033 \ themelangfe0 \ themelangcs0 {\ fonttbl {\ F2 \ fbidi \ fmodern \ fcharset0의 \의 fprq1 택배 새로운 {* \ 02070309020205020404 PANOSE}}
코드 :
int main()
{
ifstream in;
ofstream out;
string lineT, newlineT;
in.open("rawquote.rtf");
if(in.fail())
exit(1);
out.open("itemisedQuote.rtf");
do
{
getline(in,lineT,'\n');
newlineT += "<item>";
newlineT += lineT;
newlineT += "</item>";
if (lineT.length() >5)
{
out<<newlineT<<'\n';
}
newlineT = "";
lineT = "";
} while(!in.eof());
return 0;
}
rawquote.rtf 입력 파일을 텍스트 전용 모드로 보면 실제로 포함 된 내용을 볼 수 있습니다. – aschepler
백틱을 사용하여 다음과 같이 코드를 이스케이프 처리합니다. "- " –
일반 텍스트 문서에 문제가있어 고객의 RTF 요구 사항이 있습니까? 올바른 인코딩을 사용하는 한 중국어 문서를 텍스트 문서로 출력 할 수 없습니다. –