質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

1回答

4938閲覧

UnityにおけるOpenFileDialogについて

abc_oxox

総合スコア27

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

1クリップ

投稿2018/08/09 09:56

Unityにおいて,C#で以下のように,ボタンを押すとOpenFileDialogによってファイルを開くダイアログがでてくるようなコードを書きました.

C#

1public class AAA : MonoBehaviour 2{ 3 public UnityEngine.UI.Button BBButton; 4 public Text myText; 5 6 void Start() 7 { 8 BBButton.onClick.AddListener(() => 9 { 10 OpenFileDialog open_file_dialog = new OpenFileDialog(); 11 open_file_dialog.FileName = @"C:\"; 12 open_file_dialog.ShowDialog(); 13 14 myText = GameObject.Find("DebugText").GetComponent<Text>(); 15 myText.text = open_file_dialog.FileName; 16 } 17 } 18}

これをUnity上で実行すると,実行画面上のボタンを押すとファイルダイアログが出力され,ファイルを選択し,実行画面上のTextが選択したファイルのパスに変わり,うまくいくのですが,Build&Runすると,実行画面上のボタンを押してもファイルダイアログが出力されませんでした.

myText.text = open_file_dialog.FileName;

myText.text = "aaaa";
のように変えたところ,実行画面上のTextにaaaaと出力されなかったため,ファイルダイアログを開くところがうまくいっていないのだと思われます.

また,先ほど"Unity上での実行はうまくいく"という風に書きましたが,Unity上で実行してボタンを押すと下の画像のようなダイアログがでて,OKを押すとファイルダイアログがでてきます.
Unity上でファイルダイアログを開くとでてくる

このダイアログについては調べたのですが,有効な解決策はわかりませんでした.

また,以前こちらで質問したようなエラーが出て,Build&Runができなかったことがあったのですが,「Player Settings...」→「Other Settings」→「Scripting Runtime Version」を「.NET 3.5 Equivakent」から「.NET 4.x Equivakent」に変更したことで通ったのでそのままにしていますが,それが関係しているということはありますでしょうか?
Unityのバージョンは2018.2.2f1で,この質問を投稿した時点では最新です.

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

直接的な解決方法ではありませんが、下記のようなアセットを購入するのも一つの手かと思います。
一つ目は1000円程度なので、実装に費やす時間を考えるとお得かと思います。
UniFileBrowser
Native File Browser

投稿2018/08/15 14:34

Kapustin

総合スコア1186

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問