WebClient.UploadFile Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Lädt eine lokale Datei mit dem angegebenen URI in eine Ressource hoch.
Überlädt
UploadFile(String, String) |
Lädt die angegebene lokale Datei in eine Ressource mit dem angegebenen URI hoch. |
UploadFile(Uri, String) |
Lädt die angegebene lokale Datei in eine Ressource mit dem angegebenen URI hoch. |
UploadFile(String, String, String) |
Lädt die angegebene lokale Datei mithilfe der angegebenen Methode in die angegebene Ressource hoch. |
UploadFile(Uri, String, String) |
Lädt die angegebene lokale Datei mithilfe der angegebenen Methode in die angegebene Ressource hoch. |
UploadFile(String, String)
- Quelle:
- WebClient.cs
- Quelle:
- WebClient.cs
- Quelle:
- WebClient.cs
Lädt die angegebene lokale Datei in eine Ressource mit dem angegebenen URI hoch.
public:
cli::array <System::Byte> ^ UploadFile(System::String ^ address, System::String ^ fileName);
public byte[] UploadFile (string address, string fileName);
member this.UploadFile : string * string -> byte[]
Public Function UploadFile (address As String, fileName As String) As Byte()
Parameter
- address
- String
Der URI der Ressource, die die Datei empfängt. Beispiel: ftp://localhost/samplefile.txt.
- fileName
- String
Die Datei, die an die Ressource gesendet werden soll. Beispiel: "samplefile.txt".
Gibt zurück
Ein Byte Array, das den Textkörper der Antwort aus der Ressource enthält.
Ausnahmen
Der URI, der durch die Kombination von BaseAddressund address
gebildet wird, ist ungültig.
-oder-
fileName
ist null
, ist Empty, enthält ungültige Zeichen oder ist nicht vorhanden.
-oder-
Fehler beim Hochladen der Datei.
-oder-
Es gab keine Antwort vom Server, auf dem die Ressource gehostet wurde.
-oder-
Die kopfzeile Content-type
beginnt mit multipart
.
Beispiele
Im folgenden Codebeispiel wird die angegebene Datei mithilfe von UploadFilein den angegebenen URI hochgeladen. Alle vom Server zurückgegebenen Antworten werden auf der Konsole angezeigt.
Console::Write( "\nPlease enter the URI to post data to : " );
String^ uriString = Console::ReadLine();
// Create a new WebClient instance.
WebClient^ myWebClient = gcnew WebClient;
Console::WriteLine( "\nPlease enter the fully qualified path of the file to be uploaded to the URI" );
String^ fileName = Console::ReadLine();
Console::WriteLine( "Uploading {0} to {1} ...", fileName, uriString );
// Upload the file to the URI.
// The 'UploadFile(uriString, fileName)' method implicitly uses HTTP POST method.
array<Byte>^responseArray = myWebClient->UploadFile( uriString, fileName );
// Decode and display the response.
Console::WriteLine( "\nResponse Received::The contents of the file uploaded are: \n {0}",
System::Text::Encoding::ASCII->GetString( responseArray ) );
Console.Write("\nPlease enter the URI to post data to : ");
String uriString = Console.ReadLine();
// Create a new WebClient instance.
WebClient myWebClient = new WebClient();
Console.WriteLine("\nPlease enter the fully qualified path of the file to be uploaded to the URI");
string fileName = Console.ReadLine();
Console.WriteLine("Uploading {0} to {1} ...",fileName,uriString);
// Upload the file to the URI.
// The 'UploadFile(uriString,fileName)' method implicitly uses HTTP POST method.
byte[] responseArray = myWebClient.UploadFile(uriString,fileName);
// Decode and display the response.
Console.WriteLine("\nResponse Received. The contents of the file uploaded are:\n{0}",
System.Text.Encoding.ASCII.GetString(responseArray));
Console.Write(ControlChars.Cr + "Please enter the URI to post data to : ")
Dim uriString As String = Console.ReadLine()
' Create a new WebClient instance.
Dim myWebClient As New WebClient()
Console.WriteLine(ControlChars.Cr & _
"Please enter the fully qualified path of the file to be uploaded to the URI")
Dim fileName As String = Console.ReadLine()
Console.WriteLine("Uploading {0} to {1} ...", fileName, uriString)
' Upload the file to the URI.
' The 'UploadFile(uriString,fileName)' method implicitly uses HTTP POST method.
Dim responseArray As Byte() = myWebClient.UploadFile(uriString, fileName)
' Decode and display the response.
Console.WriteLine(ControlChars.Cr & "Response Received. The contents of the file uploaded are: " & _
ControlChars.Cr & "{0}", System.Text.Encoding.ASCII.GetString(responseArray))
Das folgende Codebeispiel zeigt eine ASP.NET Seite, die gepostete Dateien akzeptieren kann und für die Verwendung mit der UploadFile-Methode geeignet ist. Die Seite muss sich auf einem Webserver befinden. Seine Adresse stellt den Wert für den address
Parameter der UploadFile-Methode bereit.
<%@ Import Namespace="System"%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Net"%>
<%@ Import NameSpace="System.Web"%>
<Script language="C#" runat=server>
void Page_Load(object sender, EventArgs e) {
foreach(string f in Request.Files.AllKeys) {
HttpPostedFile file = Request.Files[f];
file.SaveAs("c:\\inetpub\\test\\UploadedFiles\\" + file.FileName);
}
}
</Script>
<html>
<body>
<p> Upload complete. </p>
</body>
</html>
<%@ Import Namespace="System"%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Net"%>
<%@ Import NameSpace="System.Web"%>
<Script language="VB" runat=server>
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
Dim f As String
Dim file
For Each f In Request.Files.AllKeys
file = Request.Files(f)
file.SaveAs("c:\inetpub\test\UploadedFiles\" & file.FileName)
Next f
End Sub
</Script>
<html>
<body>
<p> Upload complete. </p>
</body>
</html>
Hinweise
Vorsicht
WebRequest
, HttpWebRequest
, ServicePoint
und WebClient
sind veraltet, und Sie sollten sie nicht für die neue Entwicklung verwenden. Verwenden Sie stattdessen HttpClient.
Die UploadFile-Methode sendet eine lokale Datei an eine Ressource. Diese Methode verwendet den STOR-Befehl, um eine FTP-Ressource hochzuladen. Für eine HTTP-Ressource wird die POST-Methode verwendet.
Diese Methode blockiert beim Hochladen der Datei. Wenn Sie weiterhin auf die Antwort des Servers warten möchten, verwenden Sie eine der UploadFileAsync Methoden.
Die POST
-Methode wird durch HTTP definiert. Wenn die zugrunde liegende Anforderung http nicht verwendet und POST
vom Server nicht verstanden wird, bestimmen die zugrunde liegenden Protokollklassen, was auftritt. In der Regel wird ein WebException ausgelöst, wobei die Status-Eigenschaft festgelegt ist, um den Fehler anzugeben.
Wenn die BaseAddress-Eigenschaft keine leere Zeichenfolge ("") ist und address
keinen absoluten URI enthält, muss address
ein relativer URI sein, der mit BaseAddress kombiniert wird, um den absoluten URI der angeforderten Daten zu bilden. Wenn die eigenschaft QueryString keine leere Zeichenfolge ist, wird sie an address
angefügt.
Anmerkung
Dieses Mitglied gibt Ablaufverfolgungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in Ihrer Anwendung aktivieren. Weitere Informationen finden Sie unter Netzwerkablaufverfolgung in .NET Framework.
Gilt für:
UploadFile(Uri, String)
- Quelle:
- WebClient.cs
- Quelle:
- WebClient.cs
- Quelle:
- WebClient.cs
Lädt die angegebene lokale Datei in eine Ressource mit dem angegebenen URI hoch.
public:
cli::array <System::Byte> ^ UploadFile(Uri ^ address, System::String ^ fileName);
public byte[] UploadFile (Uri address, string fileName);
member this.UploadFile : Uri * string -> byte[]
Public Function UploadFile (address As Uri, fileName As String) As Byte()
Parameter
- address
- Uri
Der URI der Ressource, die die Datei empfängt. Beispiel: ftp://localhost/samplefile.txt.
- fileName
- String
Die Datei, die an die Ressource gesendet werden soll. Beispiel: "samplefile.txt".
Gibt zurück
Ein Byte Array, das den Textkörper der Antwort aus der Ressource enthält.
Ausnahmen
Der URI, der durch die Kombination von BaseAddressund address
gebildet wird, ist ungültig.
-oder-
fileName
ist null
, ist Empty, enthält ungültige Zeichen oder ist nicht vorhanden.
-oder-
Fehler beim Hochladen der Datei.
-oder-
Es gab keine Antwort vom Server, auf dem die Ressource gehostet wurde.
-oder-
Die kopfzeile Content-type
beginnt mit multipart
.
Hinweise
Vorsicht
WebRequest
, HttpWebRequest
, ServicePoint
und WebClient
sind veraltet, und Sie sollten sie nicht für die neue Entwicklung verwenden. Verwenden Sie stattdessen HttpClient.
Die UploadFile-Methode sendet eine lokale Datei an eine Ressource. Diese Methode verwendet den STOR-Befehl, um eine FTP-Ressource hochzuladen. Für eine HTTP-Ressource wird die POST-Methode verwendet.
Diese Methode blockiert beim Hochladen der Datei. Wenn Sie weiterhin auf die Antwort des Servers warten möchten, verwenden Sie eine der UploadFileAsync Methoden.
Die POST
-Methode wird durch HTTP definiert. Wenn die zugrunde liegende Anforderung http nicht verwendet und POST
vom Server nicht verstanden wird, bestimmen die zugrunde liegenden Protokollklassen, was auftritt. In der Regel wird ein WebException ausgelöst, wobei die Status-Eigenschaft festgelegt ist, um den Fehler anzugeben.
Wenn die BaseAddress-Eigenschaft keine leere Zeichenfolge ("") ist und address
keinen absoluten URI enthält, muss address
ein relativer URI sein, der mit BaseAddress kombiniert wird, um den absoluten URI der angeforderten Daten zu bilden. Wenn die eigenschaft QueryString keine leere Zeichenfolge ist, wird sie an address
angefügt.
Anmerkung
Dieses Mitglied gibt Ablaufverfolgungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in Ihrer Anwendung aktivieren. Weitere Informationen finden Sie unter Netzwerkablaufverfolgung in .NET Framework.
Gilt für:
UploadFile(String, String, String)
- Quelle:
- WebClient.cs
- Quelle:
- WebClient.cs
- Quelle:
- WebClient.cs
Lädt die angegebene lokale Datei mithilfe der angegebenen Methode in die angegebene Ressource hoch.
public:
cli::array <System::Byte> ^ UploadFile(System::String ^ address, System::String ^ method, System::String ^ fileName);
public byte[] UploadFile (string address, string? method, string fileName);
public byte[] UploadFile (string address, string method, string fileName);
member this.UploadFile : string * string * string -> byte[]
Public Function UploadFile (address As String, method As String, fileName As String) As Byte()
Parameter
- address
- String
Der URI der Ressource, die die Datei empfängt.
- method
- String
Die Methode, die zum Senden der Datei an die Ressource verwendet wird. Wenn null
, ist der Standardwert POST für HTTP und STOR für ftp.
- fileName
- String
Die Datei, die an die Ressource gesendet werden soll.
Gibt zurück
Ein Byte Array, das den Textkörper der Antwort aus der Ressource enthält.
Ausnahmen
Der URI, der durch die Kombination von BaseAddressund address
gebildet wird, ist ungültig.
-oder-
fileName
ist null
, ist Empty, enthält ungültige Zeichen oder ist nicht vorhanden.
-oder-
Fehler beim Hochladen der Datei.
-oder-
Es gab keine Antwort vom Server, auf dem die Ressource gehostet wurde.
-oder-
Die kopfzeile Content-type
beginnt mit multipart
.
Beispiele
Im folgenden Codebeispiel wird die angegebene Datei mithilfe von UploadFilein den angegebenen URI hochgeladen. Alle vom Server zurückgegebenen Antworten werden auf der Konsole angezeigt.
Console::Write( "\nPlease enter the URL to post data to : " );
String^ uriString = Console::ReadLine();
// Create a new WebClient instance.
WebClient^ myWebClient = gcnew WebClient;
Console::WriteLine
("\nPlease enter the fully qualified path of the file to be uploaded to the URL" );
String^ fileName = Console::ReadLine();
Console::WriteLine( "Uploading {0} to {1} ...", fileName, uriString );
// Upload the file to the URL using the HTTP 1.0 POST.
array<Byte>^responseArray = myWebClient->UploadFile( uriString, "POST", fileName );
// Decode and display the response.
Console::WriteLine( "\nResponse Received::The contents of the file uploaded are: \n {0}",
System::Text::Encoding::ASCII->GetString( responseArray ));
Console.Write("\nPlease enter the URL to post data to : ");
String uriString = Console.ReadLine();
// Create a new WebClient instance.
WebClient myWebClient = new WebClient();
Console.WriteLine("\nPlease enter the fully qualified path of the file to be uploaded to the URL");
string fileName = Console.ReadLine();
Console.WriteLine("Uploading {0} to {1} ...",fileName,uriString);
// Upload the file to the URL using the HTTP 1.0 POST.
byte[] responseArray = myWebClient.UploadFile(uriString,"POST",fileName);
// Decode and display the response.
Console.WriteLine("\nResponse Received. The contents of the file uploaded are:\n{0}",
System.Text.Encoding.ASCII.GetString(responseArray));
Console.Write(ControlChars.Cr + "Please enter the URL to post data to : ")
Dim uriString As String = Console.ReadLine()
' Create a new WebClient instance.
Dim myWebClient As New WebClient()
Console.WriteLine(ControlChars.Cr & _
"Please enter the fully qualified path of the file to be uploaded to the URL")
Dim fileName As String = Console.ReadLine()
Console.WriteLine("Uploading {0} to {1} ...", fileName, uriString)
' Upload the file to the Url using the HTTP 1.0 POST.
Dim responseArray As Byte() = myWebClient.UploadFile(uriString, "POST", fileName)
' Decode and display the response.
Console.WriteLine(ControlChars.Cr + "Response Received. The contents of the file uploaded are: " & _
ControlChars.Cr & "{0}", System.Text.Encoding.ASCII.GetString(responseArray))
Das folgende Codebeispiel zeigt eine ASP.NET Seite, die gepostete Dateien akzeptieren kann und für die Verwendung mit der UploadFile-Methode geeignet ist. Die Seite muss sich auf einem Webserver befinden. Seine Adresse stellt den Wert für den address
Parameter der UploadFile-Methode bereit.
<%@ Import Namespace="System"%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Net"%>
<%@ Import NameSpace="System.Web"%>
<Script language="C#" runat=server>
void Page_Load(object sender, EventArgs e) {
foreach(string f in Request.Files.AllKeys) {
HttpPostedFile file = Request.Files[f];
file.SaveAs("c:\\inetpub\\test\\UploadedFiles\\" + file.FileName);
}
}
</Script>
<html>
<body>
<p> Upload complete. </p>
</body>
</html>
<%@ Import Namespace="System"%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Net"%>
<%@ Import NameSpace="System.Web"%>
<Script language="VB" runat=server>
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
Dim f As String
Dim file
For Each f In Request.Files.AllKeys
file = Request.Files(f)
file.SaveAs("c:\inetpub\test\UploadedFiles\" & file.FileName)
Next f
End Sub
</Script>
<html>
<body>
<p> Upload complete. </p>
</body>
</html>
Hinweise
Vorsicht
WebRequest
, HttpWebRequest
, ServicePoint
und WebClient
sind veraltet, und Sie sollten sie nicht für die neue Entwicklung verwenden. Verwenden Sie stattdessen HttpClient.
Wenn die Adresse eine HTTP-Ressource angibt, sendet die UploadFile-Methode eine lokale Datei mithilfe der im method
Parameter angegebenen HTTP-Methode an eine Ressource und gibt eine Antwort vom Server zurück. Diese Methode blockiert beim Hochladen der Datei. Wenn Sie weiterhin auf die Antwort des Servers warten möchten, verwenden Sie eine der UploadFileAsync Methoden.
Wenn der method
-Parameter ein Verb angibt, das vom Server oder der address
Ressource nicht verstanden wird, bestimmen die zugrunde liegenden Protokollklassen, was auftritt. In der Regel wird ein WebException ausgelöst, wobei die Status-Eigenschaft festgelegt ist, um den Fehler anzugeben.
Wenn die BaseAddress-Eigenschaft keine leere Zeichenfolge ("") ist und address
keinen absoluten URI enthält, muss address
ein relativer URI sein, der mit BaseAddress kombiniert wird, um den absoluten URI der angeforderten Daten zu bilden. Wenn die eigenschaft QueryString keine leere Zeichenfolge ist, wird sie an address
angefügt.
Anmerkung
Dieses Mitglied gibt Ablaufverfolgungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in Ihrer Anwendung aktivieren. Weitere Informationen finden Sie unter Netzwerkablaufverfolgung in .NET Framework.
Gilt für:
UploadFile(Uri, String, String)
- Quelle:
- WebClient.cs
- Quelle:
- WebClient.cs
- Quelle:
- WebClient.cs
Lädt die angegebene lokale Datei mithilfe der angegebenen Methode in die angegebene Ressource hoch.
public:
cli::array <System::Byte> ^ UploadFile(Uri ^ address, System::String ^ method, System::String ^ fileName);
public byte[] UploadFile (Uri address, string? method, string fileName);
public byte[] UploadFile (Uri address, string method, string fileName);
member this.UploadFile : Uri * string * string -> byte[]
Public Function UploadFile (address As Uri, method As String, fileName As String) As Byte()
Parameter
- address
- Uri
Der URI der Ressource, die die Datei empfängt.
- method
- String
Die Methode, die zum Senden der Datei an die Ressource verwendet wird. Wenn null
, ist der Standardwert POST für HTTP und STOR für ftp.
- fileName
- String
Die Datei, die an die Ressource gesendet werden soll.
Gibt zurück
Ein Byte Array, das den Textkörper der Antwort aus der Ressource enthält.
Ausnahmen
Der URI, der durch die Kombination von BaseAddressund address
gebildet wird, ist ungültig.
-oder-
fileName
ist null
, ist Empty, enthält ungültige Zeichen oder ist nicht vorhanden.
-oder-
Fehler beim Hochladen der Datei.
-oder-
Es gab keine Antwort vom Server, auf dem die Ressource gehostet wurde.
-oder-
Die kopfzeile Content-type
beginnt mit multipart
.
Hinweise
Vorsicht
WebRequest
, HttpWebRequest
, ServicePoint
und WebClient
sind veraltet, und Sie sollten sie nicht für die neue Entwicklung verwenden. Verwenden Sie stattdessen HttpClient.
Wenn die Adresse eine HTTP-Ressource angibt, sendet die UploadFile-Methode eine lokale Datei mithilfe der im method
Parameter angegebenen HTTP-Methode an eine Ressource und gibt eine Antwort vom Server zurück. Diese Methode blockiert beim Hochladen der Datei. Wenn Sie weiterhin auf die Antwort des Servers warten möchten, verwenden Sie eine der UploadFileAsync Methoden.
Wenn der method
-Parameter ein Verb angibt, das vom Server oder der address
Ressource nicht verstanden wird, bestimmen die zugrunde liegenden Protokollklassen, was auftritt. In der Regel wird ein WebException ausgelöst, wobei die Status-Eigenschaft festgelegt ist, um den Fehler anzugeben.
Wenn die BaseAddress-Eigenschaft keine leere Zeichenfolge ("") ist und address
keinen absoluten URI enthält, muss address
ein relativer URI sein, der mit BaseAddress kombiniert wird, um den absoluten URI der angeforderten Daten zu bilden. Wenn die eigenschaft QueryString keine leere Zeichenfolge ist, wird sie an address
angefügt.
Anmerkung
Dieses Mitglied gibt Ablaufverfolgungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in Ihrer Anwendung aktivieren. Weitere Informationen finden Sie unter Netzwerkablaufverfolgung in .NET Framework.