代碼下面是用來在ASP .NET MVC2使用FileHelpers讀取固定寬度上載的文件的內容的文本文件FileHelpers:如何跳過第一行和最後一行讀取固定寬度的文本
第一行和最後一行的長度更小,原因ReadStream由於這個例外。 所有其他線都有適當的固定寬度。 如何跳過第一行和最後一行或以其他方式無一例外地讀取數據?
[FixedLengthRecord()]
class Bank
{
[FieldFixedLength(4)]
public string AINETUNNUS;
[FieldFixedLength(16)]
public string TEKST1;
[FieldFixedLength(3)]
public string opliik;
[FieldFixedLength(2)]
public string hinnalis;
};
[AcceptVerbs(HttpVerbs.Post)]
[Authorize]
public ActionResult LoadStatement(HttpPostedFileBase uploadFile)
{
FileHelperEngine engine = new FileHelperEngine(typeof(Bank));
var res = engine.ReadStream(new StreamReader(uploadFile.InputStream,
Encoding.GetEncoding(1257))) as Bank[];
}
謝謝。實際上,文件可以採用兩種不同的格式:固定寬度,如問題描述和記錄格式,其中每個字段位於不同的行中。兩種格式的字段也不同,因此應使用兩種不同的讀取模式。固定寬度格式在每行的開始處總是包含「VV」。如何在閱讀之前檢查流,並根據格式應用不同的閱讀模式? – Andrus
如何根據需要忽略首先/忽略最後而不是在類中? – zerohero
engine.Options.IgnoreFirstLines = 1 – zerohero