我有类主要包括收集字符串输入,然后以特定格式输出数据。该类的结果基本上是一个ToString()覆盖。C#异常处理
与我的班级我有一个静态方法string Print(string path)
从平面文件读取输入。然后解析这些输入并为平面文件中的每条记录生成一个类的实例。然后对于类的每个实例,我调用class.ToString()并将其追加到最终在Print()
内返回的stringbuilder。
我确保每个记录都有必要的值并且有适当的范围,如果他们不需要抛出异常的话。我从来没有做过异常处理,所以我想知道我想要做什么甚至是可能的。我想要在stringbuilder中添加结束标记清理的东西,然后将异常文本预先加入到stringbuilder中,然后返回(Exception Error Text + stringbuilder.ToString()+ FooterStuff )。
编辑代码:
它可能实际上不是一个好主意,抛出一个异常,我可能只需要使用try {}赶上{}捕捉异常,然后exception.message追加到stringbuilder的开始。但我不知道,例外对我来说是相当新的。
public class Record
{
public string Name;
public string Value;
...
private Dictionary<string, LogFormat> = new LogFormat.Table();
public static string Print()
{
Stringbuilder sb = new StringBuilder();
var k = ReadLog();
foreach (var x in k)
{
sb.Append(x.ToString());
}
return sb.ToString();
}
public override string ToString()
{
if (Table[Name].NeedsValue && (Value == String.Empty || Value == null))
{
throw new Exception();
}
return String.Format(Table[Name].Format, Attribute, Value);
}
}
public class LogFormat
{
public string Format;
public bool NeedsValue = false;
public Dictionary<string,LogFormat> Table()
{
Dictionary<string,LogFormat> dct = new Dictionary<string,LogFormat>();
dct.Add("Address", new LogFormat(){Format = "Street:{0}\nCity:{1}"});
...
return dct;
}
}
发布您的代码...... – 2010-10-19 05:25:45
好。给我一点时间。 – Shawn 2010-10-19 05:27:30