Question

J'essaie d'ouvrir un fichier .xlsx à l'aide de NPOI mais il continue de planter avec l'erreur suivante:

1 is not a supported code page.
Parameter name: codepage

Mon code est très simple:

OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "Excel Workbook|*.xlsx";

DialogResult dr = ofd.ShowDialog();

if (dr == DialogResult.OK)
{
    XSSFWorkbook myWorkbook;

    FileStream fs = new FileStream(ofd.FileName, FileMode.Open, FileAccess.Read);

    using (fs)
    {
        myWorkbook = new XSSFWorkbook(ofd.FileName);
    }
}

L'erreur se produit en essayant de créer le classeur. J'ai également essayé d'utiliser le flux, comme:

myWorkbook = new XSSFWorkbook(fs);

Quelqu'un sait-il ce qui ne va pas? Je ne trouve pas un exemple approprié sur le net pour traiter avec des fichiers .xlsx. Je poursuis la dernière construction (2.0.1).

Merci.

Était-ce utile?

La solution 4

J'ai pu ouvrir le fichier avec succès à l'aide d'Epplus, une autre bibliothèque Excel. J'utilise toujours NPOI pour les fichiers .xls mais pour .xlsx, je pense qu'il a un long chemin à parcourir.

Autres conseils

ICSharpCode.SharpZipLib.Zip.ZipConstants.DefaultCodePage = Encoding.Default.CodePage;
...
FileStream fs = new FileStream(ofd.FileName, FileMode.Open, FileAccess.Read);
XSSFWorkbook workbook = new XSSFWorkbook(fs);

ça marche pour moi... ;)

J'utilise l'usine de classement sans problèmes. Il détectera si le fichier est XLS ou XLSX et renverra l'objet approprié pour vous. Notez qu'il s'agit de la version 2.06.

Un échantillon rapide:

_fileStream = new FileStream(filenamePath, FileMode.Open, FileAccess.Read);
_currentWorksheet = _workbook.GetSheetAt(0);
_workbook = WorkbookFactory.Create(_fileStream);
_fileStream.Close();

J'ai été utilisateur d'Apache POI depuis la dernière décennie et j'ai pensé que NPOI était aussi bon que son père Java, mais je crains que le gardien soit juste: un long chemin à parcourir.

Je dois chercher OpenXML :(

Veuillez essayer la dernière version NPOI: NPOI 2.0 RC. Voici le lien: https://npoi.codeplex.com/releases/view/112932

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top