1. Use copy
_ Lit8 (kteststr, "This is a string"); <br/> tbufc8-< 50> Buf (kteststr); </P> <p> tbuf <100> newbuf; <br/> newbuf. copy (BUF); </P> <p> tbuf8 <50> newbuf1; <br/> newbuf1.copy (newbuf );
2: Use the ccnvcharactersetconverter class
_ Lit8 (kteststr, "This is a string" N "); <br/> tbufc8 <50> Buf (kteststr ); </P> <p> ccnvcharactersetconverter * Conv = ccnvcharactersetconverter: newl (); </P> <p> cleanupstack: pushl (Conv ); </P> <p> rfs fs; <br/> User: leaveiferror (FS. connect (); </P> <p> If (Conv-> preparetoconverttoorfroml (kcharactersetidentifierascii, FS )! = Ccnvcharactersetconverter: eavailable) <br/>{< br/> User: Leave (kerrnotsupported ); <br/>}</P> <p> hbufc * STR = hbufc: newl (BUF. length (); <br/> cleanupstack: pushl (STR); </P> <p> tptr = str-> des (); <br/> tint state = ccnvcharactersetconverter: kstatedefault; </P> <p> If (Conv-> converttounicode (PTR, Buf, state) = ccnvcharactersetconverter: eerrorillformedinput) <br/>{< br/> User: Leave (kerrargument); <br/>}</P> <p> FS. close (); <br/> console-> write (PTR); </P> <p> cleanupstack: popanddestroy (2); // STR, Conv