这篇随笔没什么技术含量,就是记录了一个程序员在平凡工作中的一朵小浪花。
今天在review一些code,有些文件在每两行代码中间有三行空行,看上去非常“稀疏”,用肉眼看起来很不爽。估计多半是在各种编辑器以及Word、Frontpage、Web page等之间来回拷贝的原因。试了试Notepad和VS.NET,好像都不能把这些讨厌的空行快速的一次性的去掉。于是就自己写了一个程序:
using System;
using System.IO;
namespace RemoveBlankLine
{
class RemoveBlankLineApp
{
static void Main(string[] args){
if(args.Length!=1){
Console.WriteLine("Usage: RemoveBlankLine.exe mycode.cs");
}
else
{
StreamReader reader=null;
StreamWriter writer=null;
try
{
reader=new StreamReader(args[0]);
writer=new StreamWriter("new."+args[0],false);
string line=reader.ReadLine();
while(line!=null){
if(line.Trim().Length>0){
writer.WriteLine(line);
}
line=reader.ReadLine();
}
}
catch(Exception e){
Console.Write("Exit with error.\r\n\r\n"+e.ToString());
}
finally{
if(reader!=null){
reader.Close();
}
if(writer!=null){
writer.Close();
}
}
}
}
}
}
直接用csc编译成exe就可以在命令行运行了。写写也就几分钟时间,想比起找其他Editor工具或者用正则表达式来替换等等其他方案,这肯定是最快最省事的。以后要是有人也遇到需要去掉代码里面讨厌的空行,就可以用我这个小工具。
另外,这段代码贴的时候是用CSharpFriends上的一个Code Highlighter来着色的。如果在Google里面搜索“Code Highlighter”,它是排在第一个的。排名第四的是sumtec曾经提到过的Actipro Software公司出的CodeHighlighter,免费的,而且做出来的效果是最好的。但不知道为什么,我把经过它处理后得到的HTML Code贴到博课堂的随笔来的时候,换行全丢了,所以就换用CSharpFriends上的那个Highlighter了。另一件奇怪的事情是,搜索结果的第五条是一篇标题为《Webpropaganda: Code Highlighter》的Blog文章,但点进去看,文章没有任何内容。不知道为什么排名这么高。