Je souhaite visualiser le contenu d'un fichier dans une textbox.
J'ai donc créé une page dans laquelle j'ai instancié un "input type=file"
une textbox et un bouton "load".
Le fichier est converti en Byte puis en Char puis en String,
le tout passant par l'attribut Text de la TextBox.
Lorsque je charge un fichier la première fois, tout se passe bien.
Mais lors du deuxième chargement successif, si le fichier chargé contient
des "double quote", alors j'obtiens l'exception suivante:
HttpRequestValidationException
public Function GetFileContent(ByVal File As System.Web.HttpPostedFile) As
String
Dim FileLen As Integer
Dim MyStream As System.IO.Stream
FileLen = File.ContentLength
Dim Bytes(FileLen) As Byte
Dim Chars(FileLen) As Char
' Initialize the stream.
MyStream = File.InputStream
' Read the file into the byte array.
MyStream.Read(Bytes, 0, FileLen)
'Instanciate an ASCII Byte Decoder
Dim asciiDecoder As Decoder = Encoding.Ascii.GetDecoder()
'Decode Bytes to Chars
asciiDecoder.GetChars(Bytes, 0, FileLen, Chars, 0)
'Create String and convert Chars to String
Dim MyString As New String(Chars)
Return MyString
End Function
Sub LoadBtn_Click(Sender as Object, e as EventArgs)
Dim fs As Object
fs = CreateObject("Scripting.FileSystemObject")
If (fs.FileExists(MyFile.PostedFile.FileName))=true Then
textbox.Text=GetFileContent(MyFile.PostedFile)
Else
Console.Write("File "+MyFile.PostedFile.FileName+" does not exist")
End If
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
RAVAILLE James
Bonjour,
A partir de ASP .NET 1.1 :
Il est possible de désactiver la validation de la requête, afin de ne pas valider les données soumises par un navigateur, avec cette directive :
<%@ Page validateRequest="false"%>
Mais attention au niveau de sécurité que requiert votre page...
Cordialement,
-- James RAVAILLE. MCAD .NET et MCT .NET http://www.certifdotnet.com
"Antoine Sirianni" a écrit :
Bonjour,
Je souhaite visualiser le contenu d'un fichier dans une textbox. J'ai donc créé une page dans laquelle j'ai instancié un "input type=file" une textbox et un bouton "load".
Le fichier est converti en Byte puis en Char puis en String, le tout passant par l'attribut Text de la TextBox.
Lorsque je charge un fichier la première fois, tout se passe bien. Mais lors du deuxième chargement successif, si le fichier chargé contient des "double quote", alors j'obtiens l'exception suivante: HttpRequestValidationException
public Function GetFileContent(ByVal File As System.Web.HttpPostedFile) As String
Dim FileLen As Integer Dim MyStream As System.IO.Stream
FileLen = File.ContentLength Dim Bytes(FileLen) As Byte Dim Chars(FileLen) As Char
' Initialize the stream. MyStream = File.InputStream
' Read the file into the byte array. MyStream.Read(Bytes, 0, FileLen)
'Instanciate an ASCII Byte Decoder Dim asciiDecoder As Decoder = Encoding.Ascii.GetDecoder()
'Decode Bytes to Chars asciiDecoder.GetChars(Bytes, 0, FileLen, Chars, 0)
'Create String and convert Chars to String Dim MyString As New String(Chars)
Return MyString
End Function
Sub LoadBtn_Click(Sender as Object, e as EventArgs)
Dim fs As Object fs = CreateObject("Scripting.FileSystemObject")
If (fs.FileExists(MyFile.PostedFile.FileName))=true Then textbox.Text=GetFileContent(MyFile.PostedFile) Else Console.Write("File "+MyFile.PostedFile.FileName+" does not exist") End If
Il est possible de désactiver la validation de la requête, afin de ne pas
valider les données soumises par un navigateur, avec cette directive :
<%@ Page validateRequest="false"%>
Mais attention au niveau de sécurité que requiert votre page...
Cordialement,
--
James RAVAILLE.
MCAD .NET et MCT .NET
http://www.certifdotnet.com
"Antoine Sirianni" a écrit :
Bonjour,
Je souhaite visualiser le contenu d'un fichier dans une textbox.
J'ai donc créé une page dans laquelle j'ai instancié un "input type=file"
une textbox et un bouton "load".
Le fichier est converti en Byte puis en Char puis en String,
le tout passant par l'attribut Text de la TextBox.
Lorsque je charge un fichier la première fois, tout se passe bien.
Mais lors du deuxième chargement successif, si le fichier chargé contient
des "double quote", alors j'obtiens l'exception suivante:
HttpRequestValidationException
public Function GetFileContent(ByVal File As System.Web.HttpPostedFile) As
String
Dim FileLen As Integer
Dim MyStream As System.IO.Stream
FileLen = File.ContentLength
Dim Bytes(FileLen) As Byte
Dim Chars(FileLen) As Char
' Initialize the stream.
MyStream = File.InputStream
' Read the file into the byte array.
MyStream.Read(Bytes, 0, FileLen)
'Instanciate an ASCII Byte Decoder
Dim asciiDecoder As Decoder = Encoding.Ascii.GetDecoder()
'Decode Bytes to Chars
asciiDecoder.GetChars(Bytes, 0, FileLen, Chars, 0)
'Create String and convert Chars to String
Dim MyString As New String(Chars)
Return MyString
End Function
Sub LoadBtn_Click(Sender as Object, e as EventArgs)
Dim fs As Object
fs = CreateObject("Scripting.FileSystemObject")
If (fs.FileExists(MyFile.PostedFile.FileName))=true Then
textbox.Text=GetFileContent(MyFile.PostedFile)
Else
Console.Write("File "+MyFile.PostedFile.FileName+" does not exist")
End If
Il est possible de désactiver la validation de la requête, afin de ne pas valider les données soumises par un navigateur, avec cette directive :
<%@ Page validateRequest="false"%>
Mais attention au niveau de sécurité que requiert votre page...
Cordialement,
-- James RAVAILLE. MCAD .NET et MCT .NET http://www.certifdotnet.com
"Antoine Sirianni" a écrit :
Bonjour,
Je souhaite visualiser le contenu d'un fichier dans une textbox. J'ai donc créé une page dans laquelle j'ai instancié un "input type=file" une textbox et un bouton "load".
Le fichier est converti en Byte puis en Char puis en String, le tout passant par l'attribut Text de la TextBox.
Lorsque je charge un fichier la première fois, tout se passe bien. Mais lors du deuxième chargement successif, si le fichier chargé contient des "double quote", alors j'obtiens l'exception suivante: HttpRequestValidationException
public Function GetFileContent(ByVal File As System.Web.HttpPostedFile) As String
Dim FileLen As Integer Dim MyStream As System.IO.Stream
FileLen = File.ContentLength Dim Bytes(FileLen) As Byte Dim Chars(FileLen) As Char
' Initialize the stream. MyStream = File.InputStream
' Read the file into the byte array. MyStream.Read(Bytes, 0, FileLen)
'Instanciate an ASCII Byte Decoder Dim asciiDecoder As Decoder = Encoding.Ascii.GetDecoder()
'Decode Bytes to Chars asciiDecoder.GetChars(Bytes, 0, FileLen, Chars, 0)
'Create String and convert Chars to String Dim MyString As New String(Chars)
Return MyString
End Function
Sub LoadBtn_Click(Sender as Object, e as EventArgs)
Dim fs As Object fs = CreateObject("Scripting.FileSystemObject")
If (fs.FileExists(MyFile.PostedFile.FileName))=true Then textbox.Text=GetFileContent(MyFile.PostedFile) Else Console.Write("File "+MyFile.PostedFile.FileName+" does not exist") End If