NPOI操作word表格插入換行符的方法


****NPOI 版本2.5.1.0****

在使用NPOI操作word的table 中的段落文字實現換行時,試了幾種方法都沒法奏效:

方法一:直接給單元格添加文本:"\n","\r\n"均無效

 

1 string file = @"test.docx";
2 Stream stream = File.OpenRead(file);
3 XWPFDocument doc = new XWPFDocument(stream);
4 var table = doc.Tables[0];
5 table.GetRow(1).GetCell(1).SetText("1234\n5678");
6 FileStream output = new FileStream(@"result.docx", FileMode.Create);
7 doc.Write(output);

方法二:使用段落屬性,在段落中添加AddCarriageReturn,AddBreak均無效,但是發現AddCarriageReturn出現無法識別的□:

 1              string file = @"test.docx";
 2              Stream stream = File.OpenRead(file);
 3              XWPFDocument doc = new XWPFDocument(stream);
 4              XWPFParagraph p_result = doc.CreateParagraph();
 5              var table = doc.Tables[0];
 6              var run = p_result.CreateRun();
 7              run.SetText("1234\n5678");
 8              run.AddCarriageReturn();
 9              run.AddBreak();
10              run.AppendText("換行換行");
11              table.GetRow(1).GetCell(1).SetParagraph(p_result);
12              FileStream output = new FileStream(@"result.docx", FileMode.Create);
13              doc.Write(output);

 

 

 

 方法三:通過方法二發現AddCarriageReturn應該能夠實現,只是npoi插入符號時候出現了某種bug的問題,偶然間發現鼠標光標放置在□處手動添加一個回車后,該換行付竟然被word識別了,於斯考慮新插入一個paragraph試試效果,完美解決!!!!

 1              string file = @"test.docx";
 2              Stream stream = File.OpenRead(file);
 3              XWPFDocument doc = new XWPFDocument(stream);
 4              XWPFParagraph p_result = doc.CreateParagraph();
 5              var table = doc.Tables[0];
 6              var run = p_result.CreateRun();
 7              run.SetText("1234\n5678");
 8              run.AddCarriageReturn();            
 9              run.AppendText("換行換行");
10              table.GetRow(1).GetCell(1).SetParagraph(p_result);
11              var run2 = table.GetRow(1).GetCell(1).AddParagraph().CreateRun();
12              run2.SetText(" ");
13              FileStream output = new FileStream(@"result.docx", FileMode.Create);
14              doc.Write(output);

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM