Main Content

matlab.net.QueryParameter クラス

名前空間: matlab.net

Uniform Resource Identifier (URI) のクエリ部分のパラメーター

説明

QueryParameter クラスは、次の形式の URI クエリ文字列の作成に使用します。

name1=value1&name2=value2&name3=value3

ここで、各 name=value セグメントは string メソッドを使用して string に変換された QueryParameter オブジェクトです。QueryParameter オブジェクトのベクトルでは、string メソッドは & 文字を使用して結果を結合します。string メソッドは任意の値を string に変換し、結果内の特殊文字で必要なすべてのエンコードを実行します。

クラスの属性

Sealed
true

クラス属性の詳細については、クラスの属性を参照してください。

作成

説明

obj = matlab.net.QueryParameter は空のクエリ パラメーターを作成します。

obj = matlab.net.QueryParameter(paramName,paramValue) は、paramName,paramValue のペアの引数からなるクエリ パラメーター ベクトルを作成します。複数の引数のペアを任意の順序で paramName1,paramValue1,...,paramNameN,paramValueN のように指定できます。

obj = matlab.net.QueryParameter(qStruct) は構造体からクエリ パラメーター ベクトルを作成します。

obj = matlab.net.QueryParameter(queryStr)queryStr を解析してクエリにします。

obj = matlab.net.QueryParameter(___,Format) は非スカラー値で使用する形式を指定し、前述の構文の任意の入力引数を含めることができます。

入力引数

すべて展開する

パラメーター名。string または文字ベクトルとして指定します。

パラメーター値。paramName で必要なタイプとして指定します。

パラメーター名と値。構造体として指定します。qStruct のフィールドはパラメーター名と値を定義します。

データ型: struct

パラメーター名と値。string または文字ベクトルとして指定します。queryStr は URI に示されるとおりのエンコードされた完全なクエリで、オプションで先頭に ? 文字があります。

queryStr& 文字の場所で個々の name=value クエリ パラメーターに分割されます。Name プロパティは name に設定され、Value プロパティは value に設定されます。

% と 2 桁の 16 進数が 3 文字並んだ形式は、パーセントエンコードされたバイトを表します。これらのバイト列は UTF-8 エンコード文字として扱われ、デコードされて QueryParametersName プロパティと Value プロパティを形成します。また、queryStr のプラス記号 '+' はすべてスペース '%20' として扱われます。QueryParameter を変換して string に戻すと、エンコードを必要とする文字でのみ必要な任意のパーセントエンコードが実行されます。このアクションは、これらの文字が元々 queryStr でエンコードされたかどうかに関係なく実行されるため、string メソッドの結果が queryStr と正確に一致しなくなる場合があります。ただし、意味は URI で使用される場合と同じです。

たとえば、ユーロ記号 の UTF-8 エンコードは E2 82 AC です。

q1 = matlab.net.QueryParameter('V=%e2%82%ac')
q1 = 

  QueryParameter with properties:

      Name: "V"
     Value: "€"
    Format: csv

+ および %20 文字はスペースとして扱われます。

q2 = matlab.net.QueryParameter('V=a+b%20c')
q2 = 

  QueryParameter with properties:

      Name: "V"
     Value: "a b c"
    Format: csv

string メソッドは、エンコードを必要とする文字でパーセントエンコードを実行します。たとえば、 はエンコードされます。

string(q1)
ans = V=%E2%82%AC

しかし、queryStr 引数 'V=a+b%20c' の文字はエンコードを必要としません。

q3 = string(q2)
q3 = V=a+b+c

string メソッドからの結果は queryStr に一致しませんが、URI で使用する場合と同じ値になります。

プロパティ

すべて展開する

パラメーター名。string または文字ベクトルとして指定します。

パラメーター値。実数、論理値、datetime (NaT 以外の値)、string、文字ベクトル、またはこれらの値のベクトルまたは cell ベクトルとして指定します。Value がそれ以外のタイプの場合、Value は値を文字ベクトルに変換する string メソッドまたは char メソッドをサポートしなければなりません。空の場合、Value は空の string として扱われます。

Value がベクトルの場合にエンコードに使用するエンコード形式。matlab.net.ArrayFormat 列挙型として指定します。

メソッド

すべて展開する

すべて折りたたむ

構造体フィールド名 this を作成し、値 that に設定します。

qStruct.this = 'that';
QP = matlab.net.QueryParameter(qStruct)
QP = 
  QueryParameter with properties:

      Name: "this"
     Value: 'that'
    Format: csv

2 つのクエリ this=thatone=2 で文字ベクトルを作成します。QueryParameter メソッドは、qStr& 文字で 2 つの QueryParameter オブジェクトに分割します。

qStr = '?this=that&one=2';
QPs = matlab.net.QueryParameter(qStr);

qStrname=value ペアは、Name プロパティおよび Value プロパティを定義します。

name1 = QPs(1).Name
name1 = 
"this"
value1 = QPs(1).Value
value1 = 
"that"
name2 = QPs(2).Name
name2 = 
"one"
value2 = QPs(2).Value
value2 = 
"2"

バージョン履歴

R2016b で導入