Version: 5.3 (switch to 5.4b)
言語English
  • C#
  • JS

スクリプト言語

好きな言語を選択してください。選択した言語でスクリプトコードが表示されます。

EditorUtility.SaveFilePanelInProject

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

マニュアルに切り替える
public static function SaveFilePanelInProject(title: string, defaultName: string, extension: string, message: string): string;
public static string SaveFilePanelInProject(string title, string defaultName, string extension, string message);

パラメーター

説明

プロジェクトのアセットフォルダーから始まる"save file"ダイアログを表示し、選択したファイルのパス名を取得します

関連項目: SaveFilePanel 関数


プロジェクトの Save File panel.


        
using UnityEngine;
using UnityEditor;
using System.IO;

public class SaveFilePanelInProjectExample : EditorWindow { [MenuItem( "Example/Save Texture In Project" )] static void Apply( ) { Texture2D texture = Selection.activeObject as Texture2D; if( texture == null ) { EditorUtility.DisplayDialog( "Select Texture", "You must select a texture first!", "OK" ); return; }

string path = EditorUtility.SaveFilePanelInProject( "Save png", texture.name + "png", "png", "Please enter a file name to save the texture to" ); if( path.Length != 0 ) { // Convert the texture to a format compatible with EncodeToPNG if( texture.format != TextureFormat.ARGB32 && texture.format != TextureFormat.RGB24 ) { Texture2D newTexture = new Texture2D( texture.width, texture.height ); newTexture.SetPixels( texture.GetPixels( 0 ), 0 ); texture = newTexture; }

byte[] pngData = texture.EncodeToPNG( ); if( pngData != null ) { File.WriteAllBytes( path, pngData );

// As we are saving to the asset folder, tell Unity to scan for modified or new assets AssetDatabase.Refresh( ); } } }

}