サマリー
フィーチャを JSON フォーマットに変換します。フィーチャのフィールド、ジオメトリ、および空間参照を、対応する JSON 表現に変換して、拡張子が .json のファイルに書き込みます。
使用法
出力ファイルの JSON 表現を読みやすくするために、フォーマットすることができます。JSON を空白、タブ、および改行でフォーマットし、可読性を向上させます。フォーマットされた JSON は、アプリケーションを開発したりテストしたりする際に効果があります。ただし、JSON パーサーでは空白は不要で無視されるため、本番環境のアプリケーションではフォーマットをお勧めしません。また、フォーマットされた JSON は、JSON 同等のフォーマットに比べると非常に大きくなり、ファイル サイズが、対応する JSON 表現よりも大きくなります。これはアプリケーションのパフォーマンスに影響を与える可能性があります。
- 変換は、フィーチャの結合、リレート、およびアタッチメントをサポートしていません。
フィーチャクラスまたはレイヤーのフィーチャのサブセットを変換するには、[フィーチャ → JSON (Features To JSON)] 変換ツールを使用する前に、[属性検索 (Select Layer By Attribute)] または [空間検索 (Select Layer By Location)] ツールを使用してフィーチャのサブセットを選択します。
構文
FeaturesToJSON_conversion (in_features, out_json_file, {format_json}, {include_z_values}, {include_m_values})
パラメーター | 説明 | データ タイプ |
in_features | JSON に変換するフィーチャ。 | Feature Layer |
out_json_file | 出力 JSON ファイル。 | File |
format_json (オプション) | JSON は、ArcGIS REST API 仕様の PJSON (Pretty JSON) フォーマットと同様に、可読性を向上させるためにフォーマットできます。
| Boolean |
include_z_values (オプション) | フィーチャの Z 値を JSON に含めます。
| Boolean |
include_m_values (オプション) | フィーチャの M 値を JSON に含めます。
| Boolean |
コードのサンプル
FeaturesToJSON (フィーチャ → JSON) の例 1 (Python ウィンドウ)
次の Python ウィンドウ スクリプトは、FeaturesToJSON (フィーチャ → JSON) 関数を使用して JSON および PJSON ファイルを作成する方法を示しています。
import arcpy
import os
arcpy.env.workspace = "c:/data"
arcpy.FeaturesToJSON_conversion(os.path.join("outgdb.gdb","myfeatures"),"myjsonfeatures.json")
arcpy.FeaturesToJSON_conversion(os.path.join("outgdb.gdb","myfeatures"),"mypjsonfeatures.json","FORMATTED")
FeaturesToJSON (フィーチャ → JSON) の例 2 (Python ウィンドウ)
次の Python ウィンドウ スクリプトは、Z 値および M 値を使用して FeaturesToJSON (フィーチャ → JSON) 関数を使用する方法を示しています。
import arcpy
import os
arcpy.env.workspace = "c:/data"
arcpy.FeaturesToJSON_conversion(os.path.join("outgdb.gdb","myfeatures"), "myjsonfeatures.json", "NOT_FORMATTED",
"Z_VALUES", "M_VALUES")
FeaturesToJSON (フィーチャ → JSON) の例 3 (スタンドアロン スクリプト)
[属性検索 (Select Layer By Attribute)] および [空間検索 (Select Layer By Location)] を使用して、フィーチャのサブセットを JSON に変換します。
# Import system modules
import arcpy
# Set the workspace
arcpy.env.workspace = "c:/data/mexico.gdb"
# Make a layer from the feature class
arcpy.MakeFeatureLayer_management("cities", "lyr")
# Select all cities which overlap the chihuahua polygon
arcpy.SelectLayerByLocation_management("lyr", "intersect", "chihuahua", 0, "new_selection")
# Within selected features, further select only those cities which have a population > 10,000
arcpy.SelectLayerByAttribute_management("lyr", "SUBSET_SELECTION", ' "population" > 10000 ')
# Convert the selected features to JSON
arcpy.FeaturesToJSON_conversion("lyr", r"c:\data\myjsonfeatures.json")
環境
ライセンス情報
- ArcGIS Desktop Basic: はい
- ArcGIS Desktop Standard: はい
- ArcGIS Desktop Advanced: はい