VB.net(2010) : COMの Msxml2.ServerXMLHTTP を使用して WEBアプリにバイナリデータを POST する VBscript(または JScript) で簡単にバイナリファイルをアップロードする いずれも同じ処理です。C# では、VB.net に比べていくぶん表現が厳密になっているのが解ります。文字列に使われている @ は、逐語的リテラル文字列と呼ばれており、使いやすさと読みやすさを考慮しています。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MSXML2;
using System.IO;
namespace PngUpload {
class Program {
static void Main(string[] args) {
// ****************************
// http 通信用のオブジェクトを作成
// ****************************
ServerXMLHTTP60 ServerXML = new ServerXMLHTTP60();
// ****************************
// 呼び出す URL を設定
// ****************************
String URL = "http://yourdomain/put/put.php";
// ****************************
// POST する為に開く
// ****************************
ServerXML.open("POST", URL, false);
// ****************************
// タイムアウトの設定
// ****************************
int lResolve = 60 * 1000;
int lConnect = 60 * 1000;
int lSend = 60 * 1000;
int lReceive = 60 * 1000;
ServerXML.setTimeouts(lResolve, lConnect, lSend, lReceive);
// ****************************
// ファイルを読み込む為のオブジェクト
// ****************************
FileStream fs = new FileStream(
@"C:\user\web\web\put\winofsql.png",
FileMode.Open, FileAccess.Read);
// ****************************
// ファイルを読み込むバイト型配列
// ****************************
byte[] bs = new byte[fs.Length];
// ファイルの内容をすべて読み込む
fs.Read(bs, 0, bs.Length);
// 閉じる
fs.Close();
// ****************************
// 送信するデータの長さをヘッダにセット
// ****************************
ServerXML.setRequestHeader("Content-Length", bs.Length.ToString());
// 送信
ServerXML.send(bs);
// ****************************
// 結果の表示
// ****************************
Console.WriteLine(ServerXML.responseText);
Console.ReadLine();
}
}
}
関連する記事
|
|
【VS(C#)の最新記事】
- Replit : cs-list
- C# : Excel の新しいブックのデフォルトのシートのセルに直接値をセットして、オートフィルを Range オブジェクトから実行する
- C#( Form ) : ウインドウ枠の無い吹き出しの作成
- C# のタプル( Visual Studio 2017 でテスト )
- C# : インターネット上の JSON ファイルのフォーマットを クラスとして定義して1行でオブジェクト化して使用する
- C# の文法的文字列処理
- C# : System.Data.Odbc によるデータベースのテーブルからのデータ取得処理( サンプルの SQL は MySQL 用です )
- C# : Excel を データベースとして DataGridView に読み込む
- C# : dynamic 型 による Excel へのアクセス
- C# : フォームを表示せずに、通知領域にアイコンを表示させる常駐プログラム
- Microsoft Access に対してSQLを入力してその結果を DataGridView に表示する最も簡単なコード
- C# : System.Data.Odbc データ取得(SELECT)処理( MySQL ) : ※ using 無し( Dispose 実行 )
- C# : SQL 文を外部テキストにして、String.Format でデータ部分を置き換えて利用する
- C# コンソールアプリを AN HTTPD で実行
- C# : SQLServer( SQLExpress ) の SMO を使用してテーブルの CREATE TABLE 文 を取得する
- C# : DataGridView に TKMP.DLL の IMAP(POP3) で受信したメールを非同期に表示する( 添付ファイルも取得 )
- C# : TKMP.DLLを使った、メール送信テンプレート
- C# と VB.net : TKMP.DLL を使って IMAP でメール本文の一覧を取得する( コンソール )
- C# でDataTable と DataSource を使用して、DataGridView にデータを表示するテンプレート( 行をダブルクリックしてダイアログを表示して行データを処理 )
- (C#) / VS2010 または VS2012 : TKMP.DLL(3.1.2 または 3.1.8)を使った、『さくらインターネット』用メール送信テンプレート






