Jho*_*123 4 delphi stream ansistring delphi-xe2
我创建了以下代码:
Function AnsiStringToStream(Const AString: AnsiString): TStream;
Begin
Result := TStringStream.Create(AString, TEncoding.ANSI);
End;
Run Code Online (Sandbox Code Playgroud)
但我是"W1057从'AnsiString'到'string'的隐式字符串转换"
他有什么问题吗?
谢谢.
该TStringStream构造函数需要一个字符串作为它的参数.当你给它一个AnsiString替代时,编译器必须插入转换代码,而你指定的TEncoding.ANSI事实不会改变它.
试试这样:
Function AnsiStringToStream(Const AString: AnsiString): TStream;
Begin
Result := TStringStream.Create(string(AString));
End;
Run Code Online (Sandbox Code Playgroud)
这使用显式转换,并将与编码相关的工作留给编译器,编译器已经知道如何处理它.
| 归档时间: |
|
| 查看次数: |
6637 次 |
| 最近记录: |