1
Excel 파일을 만들고 Hello 같이 (0,0) [행, 셀]에 새 값을 삽입했습니다. 두 번째로 동일한 Excel 파일, 동일한 시트를 연 다음 다른 (0,0) 셀을 다른 문자열 값으로 업데이트했습니다.NPOI를 사용하여 Excel 파일의 기존 셀 값을 업데이트하십시오.
코드는 오류없이 성공적으로 실행되지만 파일이 손상되어 열리지 않습니다.
번째 값은 cell.SetCellValue (secondValue)을 설정 한 후 디버그 모드
namespace PractiseProject
{
public static class ExcelNPOI
{
static IWorkbook workbook;
static ISheet sheet;
static IRow row;
static ICell cell;
static string file = "C:/Users/MSTEMP/Documents/Files/Test.xlsx";
static string sheetName = "Testcase";
public static void createExcel()
{
string firstValue = "Hello";
if (!File.Exists(file))
{
using (FileStream str = new FileStream(file, FileMode.Create, FileAccess.Write))
{
workbook = new XSSFWorkbook();
sheet = workbook.CreateSheet(sheetName);
row = sheet.CreateRow(0);
cell = row.CreateCell(0);
cell.SetCellValue(firstValue);
workbook.Write(str);
str.Close();
}
}
else
{
using (FileStream rstr = new FileStream(file, FileMode.Open, FileAccess.Read))
{
workbook = new XSSFWorkbook(rstr);
sheet = workbook.GetSheet(sheetName);
using (FileStream wstr = new FileStream(file, FileMode.Open, FileAccess.ReadWrite))
{
string secondValue = "changes";
row = sheet.GetRow(0);
cell = row.GetCell(0);
cell.SetCellValue(secondValue);
Debug.Print(cell.ToString());
workbook.Write(wstr);
wstr.Close();
}
rstr.Close();
}
}
}
}
}
, 코드;을 통해 값을 볼 수 있습니다. Debug.Print (cell.ToString());이고 값이 콘솔에 인쇄됩니다. 그러나 통합 문서에 쓸 때 파일이 손상됩니다. 손을 내밀어 안내하십시오. 내가 두 번째 문을 사용하여 다른 부분에서 실수를