加载具有特定系统文化信息的工作簿
Contents
[
Hide
]
可能的使用场景
早些时候,您必须更改整个线程的文化信息以处理特定文化格式的数字和日期,但现在 Aspose.Cells 提供加载选项.CultureInfo您可以使用该属性来加载具有特定文化信息的工作簿,而无需更改整个线程的文化信息。
加载具有特定系统文化信息的工作簿
以下示例代码显示了如何加载具有特定系统文化信息的工作簿以处理日期。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
using (var inputStream = new MemoryStream()) | |
{ | |
using (var writer = new StreamWriter(inputStream)) | |
{ | |
writer.WriteLine("<html><head><title>Test Culture</title></head><body><table><tr><td>10-01-2016</td></tr></table></body></html>"); | |
writer.Flush(); | |
var culture = new CultureInfo("en-GB"); | |
culture.NumberFormat.NumberDecimalSeparator = ","; | |
culture.DateTimeFormat.DateSeparator = "-"; | |
culture.DateTimeFormat.ShortDatePattern = "dd-MM-yyyy"; | |
LoadOptions options = new LoadOptions(LoadFormat.Html); | |
options.CultureInfo = culture; | |
using (var workbook = new Workbook(inputStream, options)) | |
{ | |
var cell = workbook.Worksheets[0].Cells["A1"]; | |
Assert.AreEqual(CellValueType.IsDateTime, cell.Type); | |
Assert.AreEqual(new DateTime(2016, 1, 10), cell.DateTimeValue); | |
} | |
} | |
} |
以下示例代码显示了如何加载具有特定系统文化信息的工作簿以处理数字。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
using (var inputStream = new MemoryStream()) | |
{ | |
using (var writer = new StreamWriter(inputStream)) | |
{ | |
writer.WriteLine("<html><head><title>Test Culture</title></head><body><table><tr><td>1234,56</td></tr></table></body></html>"); | |
writer.Flush(); | |
var culture = new CultureInfo("en-GB"); | |
culture.NumberFormat.NumberDecimalSeparator = ","; | |
culture.DateTimeFormat.DateSeparator = "-"; | |
culture.DateTimeFormat.ShortDatePattern = "dd-MM-yyyy"; | |
LoadOptions options = new LoadOptions(LoadFormat.Html); | |
options.CultureInfo = culture; | |
using (var workbook = new Workbook(inputStream, options)) | |
{ | |
var cell = workbook.Worksheets[0].Cells["A1"]; | |
Assert.AreEqual(CellValueType.IsNumeric, cell.Type); | |
Assert.AreEqual(1234.56, cell.DoubleValue); | |
} | |
} | |
} |