1.将文本文件使用记事本或者Editplus保存为UTF-8格式,并确信没有回车换行符。 2.include <utf.h> 3.添加charconv.lib到mmp文件的library列表 4.调用CnvUtfConverter::ConvertToUnicodeFromUtf8进行转换 5.绘制 参考代码:
RFs fileSession; TInt err = KErrNone; err = fileSession.Connect(); if ( KErrNone != err ) { fileSession.Close(); return; } if ( !BaflUtils::FileExists( fileSession, filePath )) { fileSession.Close(); return; }
RFile file; if ( file.Open( fileSession, filePath, EFileRead ) == KErrNone ) { TInt size = 0; if ( KErrNone == file.Size( size )) { HBufC8* tmp_line = HBufC8::New( size ); TPtr8 ptr( tmp_line->Des()); if( KErrNone == file.Read( ptr, size ) && NULL != m_pText_About ) { HBufC16* p16 = HBufC16::New( tmp_line->Length()); if ( NULL != p16 ) { TPtr p16ptr( p16->Des()); CnvUtfConverter::ConvertToUnicodeFromUtf8(p16ptr,*tmp_line); m_pText_About->SetBuffer( *p16 ); m_pText_About->Refersh(); } SAFE_DELETE( p16 ); } SAFE_DELETE( tmp_line ); } }
file.Close(); fileSession.Close(); |