因为我要做一个flash操作数据库的东西,所有由delphi查询到的数据库内容用vml格式发给flash现在别的都完成了,就是数据库中有中文就出错。
我的转换代码如下:
  RS := CreateOleObject('ADODB.Recordset');  
  RS := Recordset;
  //RS.Save('c:/1.xml', adPersistXML);
  RS.Save(TStreamAdapter.Create(stream) as IUnknown, adPersistXML);
  Stream.Position := 0;
  ShowMessage(Stream.DataString);
  Result := Stream.DataString;请问为什么这个时候看的数据库内容中的 中文都是乱码。
但是保存在c:/1.xml中,缺可以正常显示
是不是Stream.DataString的时候要转一个编码?

解决方案 »

  1.   

    抱歉问题打错字了应该是
     请问Stream.DataString出来的string是一个什么编码,这个编码能改吗?
      

  2.   

    将Stream.DataString进行编码转换看看
      

  3.   

    数据库、flash,它们是要求utf-8的吗?
      

  4.   

    我保存成RS.Save('c:/1.xml', adPersistXML);的时候是 utf-8格式的,
      

  5.   

    delphi有一些,比如Utf8ToUnicode之类的,看下帮助