enter是word回车键怎么去掉么

回车和换行有什么区别?我们平时按下的Enter键是回车还是换行_相关技巧
作者:用户
本文讲的是回车和换行有什么区别?我们平时按下的Enter键是回车还是换行_相关技巧,
\n是换行,英文是linefeed,ASCII码是0xA。 \r是回车,英文是carriage return ,ASCII码是0xD。 如果用过机械打字机,就知道回车和换行的区别了。。。 换行就是把滚筒卷一格,不改变水平位置。 回车就是把
\n是换行,英文是linefeed,ASCII码是0xA。 \r是回车,英文是carriage return ,ASCII码是0xD。 如果用过机械打字机,就知道回车和换行的区别了。。。 换行就是把滚筒卷一格,不改变水平位置。 回车就是把水平位置复位,不卷动滚筒。 但是我们平时按得Enter到底是回车还是换行,不太清楚?? 看到一种说法:windows下enter是 \n\r,unix下是\n,mac下是\r 在MS的系统中纯文本格式按一个回车键是输入了两个字符,一个回车一个换行。在LINUX系统中则只是一个回车。 //以上内容参考了http://topic.csdn.net/t//3101951.#和http://topic.csdn.net/t//1171659.html的讨论 还有在编程时文件操作 wb(二进制方式)或者wt(文本方式)也会有影响。我做了个实验(实验用.net2003) 在01.txt文件中输入12然后enter,在ultraedit中看到的二进制是31 32 0d 0a 然后程序如下:
复制代码 代码如下:
int mian() { FILE *fp1,*fp2,*fp3,*fp4,*fp5,*fp6; char a[10]; char b[10]; fp1 = fopen("01.txt","r"); fp3 = fopen("02.txt","w"); fread(a,sizeof(unsigned char),8,fp1); //a里是31 32 0a fwrite(a,sizeof(unsigned char),8,fp3); //02.txt里是31 32 0d 0a ,原因是输入的情况下,换行回车转换成换行,然后输出时换行又会转成换行回车 fclose(fp1); fclose(fp3); fp2 = fopen("01.txt","rb"); fp4 = fopen("03.txt","wb"); fread(b,sizeof(unsigned char),8,fp2); //b里是31 32 0d 0a fwrite(b,sizeof(unsigned char),8,fp4); //03.txt里是31 32 0d 0a ,原因是二进制情况下回车和换行的(类似文本方式的那种转换)是不存在的 fclose(fp2); fclose(fp4); return 0; }
好像结论是这样的:读的方式下,在文本方式下,enter是0x0a;在二进制方式下,enter是0x0d,0x0a。 MSDN中查到这样的话:Also, in text mode, carriage return–linefeed combinations are translated into single linefeeds on input, and linefeed characters are translated to carriage return–linefeed combinations on output. (输入的情况下,换行回车转换成换行,然后输出时换行又会转成换行回车)When a Unicode stream-I/O function operates in text mode (the default), the source or destination stream is assumed to be a sequence of multibyte characters. Therefore, the Unicode stream-input functions convert multibyte characters to wide characters. For the same reason, the Unicode stream-output functions convert wide characters to multibyte characters. Open in binary (untranslated) translations involving carriage-return and linefeed characters are suppressed. (二进制情况下回车和换行的转换是不存在的). 再引用一篇:http://zhidao.baidu.com/question/.html?fr=qrl3 软硬回车 } 硬回车就是普通我们按回车产生的,它在换行的同时也起着段落分隔的作用。 软回车是用 Shift + Enter 产生的,它换行,但是并不换段,即前后两段文字在 Word 中属于同一“段”。在应用格式时你会体会到这一点。 切换: 编辑——替换,点击高级,在“查找内容”点入“特殊字符”中的手动换行符,再在“替换为”中点入“特殊字符”中的段落标记,最后点击全部替换。 键盘上只有一种回车键Enter,但却有两种不同性质的换行标记,不能不说是一个奇迹。 我们常用的回车是硬回车,就是在word中敲击Enter键产生的那个弯曲的小箭头,占两个字节。这种回车可以有效地把段落标记出来分清楚。在两个硬回车之间的文字自成一个段落,可以对它单独设置段落标记而不用担心其他段落受到影响。这也是我们习惯用硬回车的原因:排版方便。 但是硬回车也给我们带来了麻烦。你如果是网页设计者,或者是论坛游侠,一定有这样的经历:当你打算换行时,换出的行却实在不能恭维,行间距太大了!其实这和硬回车的原理是一样的,只不过在word等文本编辑器中没有显示出它的“本来面目”。不过这样的排版的确造成了不小的困难,这时我们就得请出硬回车的兄弟:软回车。 软回车只占一个字节,在word中是一个向下的箭头。如果你从很复杂的网页中向word中复制过文字的话,对它一定不会陌生。但是想在word中直接输入软回车可不是那么容易的。因为软回车不是真正的段落标记,它只是另起了一行,不是分段。所以它不是很利于文字排版,因为它无法作为单独的一段被赋予特殊的格式。但是尽管如此,它在网页设计中还是具有举足轻重的地位的。 软回车能使前后两行的行间距大幅度缩小,因为它不是段落标记,要和法定的段落标记——硬回车区别出来。硬回车的html代码是&p&..&/p&,段落的内容就夹在里面,而软回车的代码很精悍:&br&。因此在网页中想用到软回车,只需切换到代码页面,键入软回车的代码即可。 下面我讲一下不同编辑器文字互相拷贝时回车的转化情况。 地球人都知道的,网页的文字如果复制到word中,则硬回车变为弯曲的箭头,软回车变为向下的箭头。结果造成习惯用word编辑文本的朋友很不习惯很不舒服的情况。 word中的文本复制到网页中也是同样的道理。可以说word和网页比较兼容的,要不怎么会有“保存为web页”这种选项呢? 记事本也是大家摸的比较多的编辑器。但是近年来随着社会发展外加记事本的种种弊端,许多人都将其打入冷宫。对此我只能表示遗憾,因为记事本本身的功能不丰富就是别的编辑器所取代不了的优点。大家再次将网页的文字复制时,不妨粘贴到记事本里试试。哈哈,不管网页设计者用的是什么回车,现在都变成一种回车了!怎么,你不信?那就看看吧:软回车变成了普通的回车,硬回车变成了两个普通的回车。你再从记事本里复制文字到word,记事本里的回车无一例外全都变成了硬回车!你再再从记事本里复制文字到网页编辑器,所有回车就都变成软回车了!!
以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索换行
excel enter 不换行、alt enter不能换行、js ctrl enter 换行、excel enter 换行、enter为什么叫回车,以便于您获取更多的相关知识。
弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率
40+云计算产品,6个月免费体验
稳定可靠、可弹性伸缩的在线数据库服务,全球最受欢迎的开源数据库之一
云服务器9.9元/月,大学必备
云栖社区(yq.aliyun.com)为您免费提供相关信息,包括
,所有相关内容均不代表云栖社区的意见!Quick access
C#如何实现回车键功能?
例如,用户按下回车键后,TextBox1里面就显示“I love you.&.
这个功能如何实现?
建议使用KeyDown事件,因为只有按字符键才触发KeyPress事件的。
是不好找,就在属性窗口上面有个“闪电”的图标,点那个就会显示所有可以添加的事件了,输入你自己定义的处理函数名就行了,其他的东西VS会帮你写的,你自己写函数体就可以!呵呵!
看你的焦点在那里了,如果在文本框里,就在TextBox1的keypress去截获Ascall为13的回车就可以了。
你好,可以点一下属性窗口的有个“闪电”似的按钮,就看到事件了,Designer.cs最好别改,改了也很容易破坏程序,或者被覆盖掉。
希望LS多多学习C#的基础知识,然后再熟悉vs的使用,那样会很简单啦~
All replies
看你的焦点在那里了,如果在文本框里,就在TextBox1的keypress去截获Ascall为13的回车就可以了。
建议使用KeyDown事件,因为只有按字符键才触发KeyPress事件的。
private void TextBox1_KeyDown(object sender, KeyEventArgs e)
if(e.KeyCode==13){this.Label1.Text=@&I love you.&;}
是这样写的吗?我的程序出现错误:
运算符“==”无法应用于“System.Windows.Forms.Keys”和“int”类型的操作数
Enviroment.NewLine...等于回车。。
这样试试:
private void TextBox1_KeyDown(object sender, KeyEventArgs e)
if(e.KeyCode==Keys.Enter){this.Label1.Text=@&I love you.&;}
这个也不行,虽然没有出来错误提示。但是,按下回车后,就是没有反应。
你可以调试进去看看是怎么回事
我测试了一下,好使啊!Label上能显示出“I love you&的字样来。请提供你的完整代码给我看看可以吗?
private void TextBox1_KeyDown(object sender, KeyEventArgs e)
if(e.KeyCode==13){this.Label1.Text=@&I love you.&;}
}===============不好意思,我想问下,为什么要 加个 @ 字符?@的作用是什么?谢谢了。
其实我用这样也可以啊:
Code Snippet
private void txtInput_KeyPress(object sender, KeyPressEventArgs e){
if (e.KeyChar == 13) // Enter
// do sth...}
调试的时候可以用MessageBox看看按下的键的ascii码,然后在比较
“@”是表示后边的字符串不被 转义。
&abc\\abc&,显示出来是
@&abc\\abc&,显示出来是
代码就这些。没有其它复杂的。是不是在Form窗体里,还要设置什么属性。它的好多默认属性都是False的。
是不是还要在Form1.Designer.cs里面添加代码?如EvenHandler之类的东西?
this.TextBox1.KeyDown+= new System.EventHandler(this.TextBox1.KeyDown);
是这样吗?
我也用过,KeyPress。也是没有反应。
最好别直接修改Designer.cs文件!你在属性窗口中为TextBox控件添加KeyDown事件,然后在处理函数中再写上面的代码!
最好别直接修改Designer.cs文件!你在属性窗口中为TextBox控件添加KeyDown事件,然后在处理函数中再写上面的代码!=================
借宝地再问版主:
TextBox控件添加KeyDown事件 ==》textBox的属性窗口哪里添加啊?我怎么找不着?呵呵
我已经找到了。谢谢
是呀,属性窗口里,那个属性是控制KeyDown的?怎么添加?
我想了想,是不是我的笔记本电脑问题?它是Dell Inspiron 2200. 里面的键盘是中文键盘的。是不是它的键盘码和英文的不同,所以没有反应?
是不好找,就在属性窗口上面有个“闪电”的图标,点那个就会显示所有可以添加的事件了,输入你自己定义的处理函数名就行了,其他的东西VS会帮你写的,你自己写函数体就可以!呵呵!
你好,可以点一下属性窗口的有个“闪电”似的按钮,就看到事件了,Designer.cs最好别改,改了也很容易破坏程序,或者被覆盖掉。
希望LS多多学习C#的基础知识,然后再熟悉vs的使用,那样会很简单啦~
Code Snippet
最好别直接修改Designer.cs文件!你在属性窗口中为TextBox控件添加KeyDown事件,然后在处理函数中再写上面的代码!
到底Form1.Designer.cs里面显示的是什么?
我试过了。有一些事件,如TextChange,在CS文件里写上代码后,在Form1.Designer.cs里自动生成Handler之类的一句话。有些事件,如DoubleClick之类的,在CS文件里写上代码后,不会自动在Form1.Designer.cs里生成Handler。所以没有反应。
后来我在Form1.Designer.cs里面自己加上DoubleClick的Handler后就可以了。这个KeyDown问题应该也是一样的。只是现在我不知道如何写这个KeyDown的Handler。这个有点复杂。

我要回帖

更多关于 enter为什么叫回车键 的文章

 

随机推荐