Spécification des chiffres significatifs à stocker dans le fichier Excel avec JavaScript via C++
Scénarios d’utilisation possibles
Par défaut, Aspose.Cells for JavaScript via C++ stocke 17 chiffres significatifs pour les valeurs double dans le fichier Excel, contrairement à MS-Excel qui ne stocke que 15 chiffres significatifs. Vous pouvez modifier le comportement par défaut d’Aspose.Cells de 17 à 15 chiffres significatifs en utilisant la propriété CellsHelper.significantDigits.
Spécification des chiffres significatifs à stocker dans le fichier Excel
Le code suivant force Aspose.Cells à utiliser 15 chiffres significatifs lors de la stockage des valeurs double dans le fichier Excel. Veuillez vérifier le fichier Excel de sortie. Changez son extension en .zip, dézippez-le et vous verrez que seuls 15 chiffres significatifs sont stockés dans le fichier Excel. La capture d’écran suivante illustre l’effet de la propriété CellsHelper.significantDigits sur le fichier Excel de sortie.

Code d’exemple
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Aspose.Cells Example - Significant Digits</title>
</head>
<body>
<h1>Significant Digits Example</h1>
<p>This example sets CellsHelper.significantDigits to 15 and writes a double to cell A1.</p>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Run Example</button>
<a id="downloadLink" style="display: none;">Download Result</a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat, CellsHelper } = AsposeCells;
AsposeCells.onReady({
license: "/lic/aspose.cells.enc",
fontPath: "/fonts/",
fontList: [
"arial.ttf",
"NotoSansSC-Regular.ttf"
]
}).then(() => {
console.log("Aspose.Cells initialized");
});
document.getElementById('runExample').addEventListener('click', async () => {
const fileInput = document.getElementById('fileInput');
// If a file is provided, open it; otherwise create a new workbook (matches original Node behavior)
let workbook;
if (fileInput.files.length) {
const file = fileInput.files[0];
const arrayBuffer = await file.arrayBuffer();
workbook = new Workbook(new Uint8Array(arrayBuffer));
} else {
workbook = new Workbook();
}
// By default, Aspose.Cells stores 17 significant digits unlike MS-Excel which stores only 15 significant digits
CellsHelper.significantDigits = 15;
// Access first worksheet
const worksheet = workbook.worksheets.get(0);
// Access cell A1
const c = worksheet.cells.get("A1");
// Put double value, only 15 significant digits as specified by CellsHelper.significantDigits above will be stored
c.value = 1234567890.123451711;
// Saving the workbook
const outputData = workbook.save(SaveFormat.Xlsx);
const blob = new Blob([outputData]);
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'out_SignificantDigits.xlsx';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download Modified Excel File';
document.getElementById('result').innerHTML = '<p style="color: green;">Workbook created/modified successfully! Click the download link to get the file.</p>';
});
</script>
</html>