
























清风竹林发布了去除代码行号的一个小程序,确实方便大家收集一些文章代码,但个人认为象这样的小东东,要使广大网友能拿来就用,用.Net 2.0做成WinForm,有点贵族化了,于是动手整出个平民化的控制台版本,可以清除指定的文本文件,也可以对指定目录进行批量清除,希望对大家有点作用。以下代码在.Net Framework1.1与.Net Framework2.0均可运行。
1
using System;
2
using System.IO;
3
using System.Text;
4
5
namespace Ycweb
6
{
7
/// <summary>
8
/// Summary description for Class1.
9
/// </summary>
10
class CLN
11
{
12
/// <summary>
13
/// The main entry point for the application.
14
/// </summary>
15
[STAThread]
16
static void Main(string[] args)
17
{
18
//
19
// TODO: Add code to start application here
20
//
21
if(args.Length<1)
22
{
23
Console.WriteLine("用法:\n\r\t CLN YourFile.TXT|YourDirectory");
24
}
25
else
26
{
27
string tmpArg=args[0];
28
29
if(tmpArg.StartsWith("/") || tmpArg.StartsWith("?"))
30
{
31
Console.WriteLine("用法:\n\r\t CLN YourFile.TXT|YourDirectory");
32
}
33
else
34
{
35
//假定用户提供的参数为目录,则先判断目录是否存在,如果存在则遍历该目录下的所有文本文件并清除行号
36
if(System.IO.Directory.Exists(tmpArg))
37
{
38
Clear Line Numbers For Files In The Directory
54
}
55
else
56
{
57
Clear Line Numbers For The File
69
}
70
}
71
}
72
}
73
74
/// <summary>
75
/// 清除指定文件中的行号
76
/// </summary>
77
/// <param name="fileName">文件名,含路径</param>
78
/// <returns>清除结果信息</returns>
79
public static string ClearLine(string fileName)
80
{
81
string result;
82
FileInfo fi=new FileInfo(fileName);
83
string strExtension =fi.Extension;
84
try
85
{
86
using (StreamReader reader = new StreamReader(fileName, Encoding.Default, true))
87
{
88
using (StreamWriter writer = new StreamWriter(fileName.Replace(strExtension,"_clear" + strExtension)))
89
{
90
char[] lineNum = "#0123456789".ToCharArray();
91
string code = null;
92
while ((code = reader.ReadLine()) != null)
93
{
94
code = code.TrimStart();
95
code = code.TrimStart(lineNum);
96
writer.WriteLine(code);
97
}
98
}
99
}
100
result=string.Format("成功清除文件{0}的行号.",fileName);
101
}
102
catch
103
{
104
result=string.Format("清除文件{0}的行号失败.",fileName);
105
}
106
107
return result;
108
}
109
}
110
111
}
112
立即下载源码(for vs2003)
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。