标签:分析 build equal str open iat rev reg 方法
由于Office读取Excel需要去安装插件,所以懒得装插件。换另外一个插件读取Excel。
读取单元格的时候得注意Cells方法会抛出异常,它自己会判断单元格是否有值,没有的话,开始可能是五列,一列为空那么就回发现不能正常获取第五列的值。GetCell可以避免情况出现。还有一个就是Excel版本不同生成的文件也不同,做一下大致的区分即可。这个插件还是用着蛮不错的,像我这种账单狗,还是用得到的。毕竟我不喜欢用Excel只喜欢用程序分析数据。
StringBuilder stu = new StringBuilder();
DirectoryInfo mydir = new DirectoryInfo(strFileName);//strFileName 这个参数代表的是文件夹的地址读取下面的所有Excel
FileSystemInfo[] fsi = mydir.GetFileSystemInfos();
for (int j = 0; j < fsi.Length; j++)
{ //AWBCode, BrokerAbbreviation, ItemCount, VolumeWeight, GrossWeight, CustomerBatchCode, AirportCode, ATA, ATW, Discount, Remark, ID
if (fsi[j] is FileInfo)//
{
IWorkbook wk = null;
string extension = System.IO.Path.GetExtension(fsi[j].FullName);
FileStream fs = File.OpenRead(fsi[j].FullName);
if (extension.Equals(".xls"))
{
//把xls文件中的数据写入wk中
wk = new HSSFWorkbook(fs);
}
else
{
//把xlsx文件中的数据写入wk中
wk = new XSSFWorkbook(fs);
}
fs.Close();
// int sheetCount = wk.NumberOfSheets;//获取sheet的数量
ISheet sheet = wk.GetSheet(wk.GetSheetName(0));//第一个sheet页(列表)
#region 读取第一个sheet页面
for (int i = 1; i <= sheet.LastRowNum; i++)
{
IRow row = sheet.GetRow(i); //读取当前行数据
stu.Append(row.GetCell(0));//记得row.Cells如果取出来的值是空的是会抛出异常的GetCell可以避免异常出现
}
#endregion
}
}
标签:分析 build equal str open iat rev reg 方法
原文地址:https://www.cnblogs.com/20191231Jack/p/12125539.html