数组 Arr:array[1..500]of string;copy(Arr[1],1,30);我的数组是汉字和英文的混合 截取字符串输出的时候会乱码 该如何解决?
解决方案 »
- 推荐一种好方法:禁止DBGrid列拖动的问题,但宽度可调!
- 求实现多行表头的DbGrid及stringGrid控件及代码。。。 请高手帮忙
- 李维的高效数据库系统篇电子书的下载
- 向大家請教一個很菜的問題---關于數據刷新的...
- 为什么用PreviewMODAL预拦报表关闭后,QRDBRichText老有问题
- 哪位有thingvetory的源码?UP有分,有的另开帖给分.
- 为什么我在Change里不能改变ComboBox.text的值
- 请问 熟悉 express ribbon 控件 的 过来看看
- 各位兄弟:能介绍delpli6的控件用一用!
- 急!急!急!有关SQL查询的参数问题
- delphi webbrowser1 中 单选 如何选定单选框的值 有 0 和 1
- 清洗抽油烟机的注意了,小心让偷拆元件,然后让你修理。
比如:
arr[1]:='delphi 如何不出乱码的截取字符串'
copy(arr[1],1,6)
得到的结果是: delphi var
wstr: widestring;
begin
wstr := arr[1];
wstr := copy(wstr, 1, 30);
showmessage(wstr);
end;
Arr[1]:='补充提问细节MNK请及时采纳的方法後感谢MNK回答者问题'或者
Arr[1]:='准备5台数码相机系统用电脑安装数码系统软件'
该如何截取字符串? 首先截取前15个汉字,然后再挨着截取剩余的部分 改如何实现?我这样写的 copy(Arr[1],1,30); 然后 copy(Arr(1),31,length(Arr[3]));
但是在截取剩余部分的时候出现了乱码请大家帮忙
截取剩余部分的时候出现了乱码
//截取字符串
function InterceptionStr(aSource, aBStr, aEStr: string): string;
var
startPosition, endPosition: Cardinal;
begin
startPosition := Pos(aBStr,aSource);
if startPosition > 0 then
startPosition := startPosition + StrLen(PAnsiChar(aBStr))
else
startPosition := 1;
aSource := Copy(aSource,startPosition,StrLen(PAnsiChar(aSource)));
endPosition := Pos(aEStr,aSource);
if endPosition > 0 then
endPosition := endPosition - 1
else
endPosition := StrLen(PAnsiChar(aSource));
aSource := Copy(aSource,1,endPosition);
Result := aSource;
end;[/code]
//截取字符串
function InterceptionStr(aSource, aBStr, aEStr: string): string;
var
startPosition, endPosition: Cardinal;
begin
startPosition := Pos(aBStr,aSource);
if startPosition > 0 then
startPosition := startPosition + StrLen(PAnsiChar(aBStr))
else
startPosition := 1;
aSource := Copy(aSource,startPosition,StrLen(PAnsiChar(aSource)));
endPosition := Pos(aEStr,aSource);
if endPosition > 0 then
endPosition := endPosition - 1
else
endPosition := StrLen(PAnsiChar(aSource));
aSource := Copy(aSource,1,endPosition);
Result := aSource;
end;
[/code]