[英]Is it Possible to convert a set of numbers to their ASCII Char values?
我可以将字符串转换为中间有空格的 Ascii 值。
示例:“我喜欢胡萝卜”致:73 32 108 105...
但我试图找出一种方法来获取这些数字并将它们转换回它们的 ascii 字符。
我正在使用最新版本的 Delphi (embarcadero) 并且是编码新手,所以请帮助我:)
这是代码:
var
S1 : String;
S2 : String;
A : TStringDynArray; // Add System.Types in uses
N : String;
C : Char;
begin
// 'I like carrots' in ascii code separated by a space
S1 := '73 32 108 105 107 101 32 99 97 114 114 111 116 115';
A := SplitString(S1, ' '); // Add System.StrUtils in uses
S2 := '';
for N in A do
S2 := S2 + Char(StrToInt(N));
ShowMessage(S2);
end;
我不知道完整的问题,但您可以添加代码来检查有效的输入字符串。
您可以在每个字符中使用 Ord 函数。 Chr 函数返回指定 ASCII 值的字符。
例子
var
s: string;
c: char;
s:='I like carrots';
for c in s do
begin
Writeln(ord(c));
end;
我不太了解delphi,但看看这个链接: http : //www.delphibasics.co.uk/Article.asp? Name=Text
在分配到和从字符变量部分中,它演示了一个类似这样的函数: fromNum := Chr(65); // Assign using a function
fromNum := Chr(65); // Assign using a function
。
如果这不起作用,您可以考虑构建一个 int->char 的大型映射。 它的开头是在上面的网站上也靠近顶部。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.