当一个字符串长度超过1024时 赋值给delphi7 Tmemo 自动折行了?

时间:2022-02-06 22:03:50
因为  delphi 的 Tmemo  每行最大字符数 是  1024  如果字符串多于1024 即使设置了 WordWrap=false 也会自动回行


这样会带来很多 问题   本来是一行字符串 从memo中读取 就是 2行了 导致错误 

大家 如何 解决的 

8 个解决方案

#1


截取换行符以前的作为一行数据不行吗?

#2


按行 读取  memo 是 这样的 

memo.lines.string[i]   

#3


这么长啊!

#4


这里不能贴图片  否则让 大家看看 数据 

我处理的字符串 大部分都是 超过 1024 的 

这里我指的 是 ansistring   包含汉字 

#5


测试发现memo确实是有每行1024的字符的限制,会自动换行显示

如果memo只是用来显示内容,直接换用TStringList吧
或者用RichEdit,不过查过还是有同样的限制,只是上限大一些

#6


为什么要用MEMO啊?能不能用一变暂存?

#7


创建一个临时 TStringList 变量, 设置其 text 为 memo. 
你就可以从这个变量获得实际的行数。

#8


看来 用 memo 临时存储  长字符串  不是好的解决方案呀 

目前 我只能改为 tstringlist 了 

#1


截取换行符以前的作为一行数据不行吗?

#2


按行 读取  memo 是 这样的 

memo.lines.string[i]   

#3


这么长啊!

#4


这里不能贴图片  否则让 大家看看 数据 

我处理的字符串 大部分都是 超过 1024 的 

这里我指的 是 ansistring   包含汉字 

#5


测试发现memo确实是有每行1024的字符的限制,会自动换行显示

如果memo只是用来显示内容,直接换用TStringList吧
或者用RichEdit,不过查过还是有同样的限制,只是上限大一些

#6


为什么要用MEMO啊?能不能用一变暂存?

#7


创建一个临时 TStringList 变量, 设置其 text 为 memo. 
你就可以从这个变量获得实际的行数。

#8


看来 用 memo 临时存储  长字符串  不是好的解决方案呀 

目前 我只能改为 tstringlist 了