1、最近开发一个阿拉伯语的项目,要把richtextbox中的文本按行提取出来并反序输出(注意是按物理行,不是按虚拟行)代码如下:
RichTextBox nrtb= new richTextBox();
foreach (string str in nrtb.Lines)
{
char[] strnew = str.ToArray();
Array.Reverse(strnew);
MessageBox.Show(new string(strnew));
}
却发现,当自动换行启用时,即使richTextbox里显示有N行,但实际上只有一个换行符即
1111111111111
1111111111111
1111111111111
11
取出后,只取得了111111111111111111111111111111111111
求助如何真正按行将内容分离!!???
2、如何可以设置richtextbox的阅读方向为从右向左, 即像计算器一样:在从左像右读“中华人”,从右向左读:“人华中”
!!!
RichTextBox nrtb= new richTextBox();
foreach (string str in nrtb.Lines)
{
char[] strnew = str.ToArray();
Array.Reverse(strnew);
MessageBox.Show(new string(strnew));
}
却发现,当自动换行启用时,即使richTextbox里显示有N行,但实际上只有一个换行符即
1111111111111
1111111111111
1111111111111
11
取出后,只取得了111111111111111111111111111111111111
求助如何真正按行将内容分离!!???
2、如何可以设置richtextbox的阅读方向为从右向左, 即像计算器一样:在从左像右读“中华人”,从右向左读:“人华中”
!!!
解决方案 »
- c# 简单正则表达式求解
- 写一个小程序,程序运行后背景是白屏(满屏),然后可以将图片导入到白屏,在白屏里对图片可以伸缩,移动
- C#设计模式编程之抽象工厂模式
- 请问有没有 C#导出EXCEL的实例吗?
- c#中如何学习编写c/s结构的程序?
- 如何让C#控制ASP.NET页面的自定义按扭不显示
- 关于Form窗体上RadioBox控件功能提示问题
- 使用API函数播放MP3等音频文件的类设计(C#)
- 请教一个 listview selectedindices的古怪问题
- 使用DataGridView控件绑定数据表里的字段,在里面修改,当修改完后点击工具栏中的保存按钮后,最后编辑的那单元格的数据在数据库中没修改
- C#读取一个不断加入新行的TXT文件的方法
- 录入重复信息的问题
其实,主要的目的是想要把richtextbox 当前行进行逆转排序,
即当前行为123456 转换后为654321,
想到的办法开始是想把winform的阅读方向设成从右向左,righttoleft和righttoleftlayout
但FORM方向变了,但richtextbox的方向没变
private string Reverse(string original)
{
char[] arr = original.ToCharArray();
Array.Reverse(arr);
return new string(arr);
}
关键的问题是
我想实现 richtextbox中 123456-》654321,如果不跨自然行的话,这样做是可以的
但如果是这样:
12345
67890 转换后就成了 0987654321
也就是说,在richtextbox中,因为没有了“硬分行”所以得出的lines是一个整体,
具体例子:
我们都是有思想有
报负的人 转换后,右对齐应该是:有想思有是都们我
人的负报
这就是从右至左读
但是因为没有硬分行,这句就变成了 有想思有是都们我人的负报所以纠结啊。。
除非你想办法在那个自动换行的地方插入"\n"
才可以使用richTextBox1.Lines[i]