Laden Sie die Arbeitsmappe mit bestimmten Systemkulturinformationen
Mögliche Verwendungsszenarien
Bisher mussten Sie die Kulturinformationen des gesamten Threads ändern, um mit Zahlen und Daten im jeweiligen Kulturformat umzugehen, aber jetzt bietet Aspose.Cells die LoadOptions.CultureInfo-Eigenschaft, die Sie nutzen können, um Ihre Arbeitsmappe mit bestimmten Kulturinformationen zu laden, ohne die Kulturinformationen des gesamten Threads zu ändern.
Laden Sie die Arbeitsmappe mit bestimmten Systemkulturinformationen
Der folgende Beispielcode zeigt, wie die Arbeitsmappe mit spezifischen Systemkulturinformationen geladen werden kann, um mit Daten umzugehen.
// 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); | |
} | |
} | |
} |
Der folgende Beispielcode zeigt, wie die Arbeitsmappe mit bestimmten Systemkulturinformationen geladen werden kann, um mit Zahlen umzugehen.
// 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); | |
} | |
} | |
} |