如何读取excel文件并将其列数据类型更改为字符串 现在我有一张excel表,第10列
数据显示如下
2010年1月5日
2010年6月12日
我需要改成这种格式“dd-MM-yyyy” 所以它显示这样。 2010年1月5日
2010年6月12日
任何人都可以告诉我如何做到这一点。
任何帮助都会非常棒
答案 0 :(得分:2)
它读取并更新excel文件。在执行此操作之前,请执行以下步骤
1.右键单击解决方案资源管理器,然后选择“添加引用” 2.在.Net选项卡中选择Microsoft.Office.interop.Excel 3.在NameSpace中的代码(即)中添加以下行:
using Excel = Microsoft.Office.Interop.Excel;
string address;
Excel.ApplicationClass excel = new Excel.ApplicationClass();
object Missing = Type.Missing;
FileInfo fInfo = new FileInfo(@"D:\Book1.xls");
if (fInfo.Exists)
{
Excel.Workbook workbook = excel.Workbooks.Open(@"D:\Book1.xls", Missing, Missing,
Missing, Missing, Missing, Missing, Missing,
Missing, Missing, Missing, Missing, Missing,
Missing, Missing);
Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Sheets["Sheet1"];
Excel.Range docNumber = worksheet.Cells.Find("10/5/2010", worksheet.Cells[1, 1],
Excel.XlFindLookIn.xlValues,
Excel.XlLookAt.xlPart, Missing, Excel.XlSearchDirection.xlNext,
false, Missing, Missing);
if (docNumber != null)
{
address = docNumber.get_Address(true, true, Excel.XlReferenceStyle.xlA1, Missing,
Missing);
docNumber = worksheet.UsedRange;
DateTime parsedDate;
for (int rCnt = 1; rCnt <= docNumber.Rows.Count; rCnt++)
{
for (int cCnt = 1; cCnt <= docNumber.Columns.Count; cCnt++)
{
string str = (string)(docNumber.Cells[rCnt, cCnt] as Excel.Range).Text ;
parsedDate = DateTime.Parse(str);
str = String.Format("{0:dd-mm-yyyy}", parsedDate);
docNumber.Cells[rCnt, cCnt] = str;
}
}
workbook.Save();
}
}