Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Beschädigte Dateien Microsoft Office 2007 ASP.NET 1.1 und SQL Server

Ich bin mir nicht 100 % sicher, ob Ihr Problem das gleiche war wie ich, aber in meinem Fall habe ich festgestellt, dass das Problem tatsächlich in der Schrift lag Teil, nicht im Leseteil. Mein ursprünglicher Schreibcode war beispielsweise so:

Dim FILE_CONTENT(len) As Byte
File.InputStream.Read(FILE_CONTENT, 0, len)
SaveFileToDatabase(FILE_NAME, CONTENT_TYPE, FILE_CONTENT)

Als ich die erste Zeile wie folgt geändert habe:

Dim FILE_CONTENT(0 To len - 1) As Byte 

Der Lesefehler ist verschwunden. Ich habe nur vergessen, dass VB standardmäßig N + 1 Bytes (O bis N) zuweist, wenn Sie es dimensionieren, ohne die untere Grenze anzugeben. Siehe ähnliche Situation hier beschrieben:Hochgeladene Docx-Dateien werden beschädigt . Hoffe das hilft.