回答編集履歴

1 コメントを受けて追記

sakura_hana

sakura_hana score 9785

2017/12/20 13:01  投稿

現在のボタン設定がスクリーンショットの通りだとすると、何のメソッドも呼ばれません。
(No Function=何も登録されていない)
なのでコードが正しくても動かないのは当然、というのが1点。
更にコードの方、`Update()`内ですが、
`i`の値が初期値(1)のまま変更されていないので、`if (i > 10000)`以降に入りません。
また、入ったとしても2行後にreturnしているので、書き込み処理に絶対到達しないようになっています。
もっというとこの構成だと、1フレーム毎に書き出しされる可能性がある・Close処理が恐らく正しく行われない・負荷が高い状態です。
if文の組み方を考え直すか、`Update()`ではなく`Push()`メソッド内に書き出し処理をそのまま記載すればいいのでは?
if文の組み方を考え直すか、`Update()`ではなく`Push()`メソッド内に書き出し処理をそのまま記載すればいいのでは?
---
2017/12/20 13:00 コメントを受けて追記
```C#
   public void Push()
   {
           //処理
           Debug.Log(GetNedSpaceOrientations());
           this.GetComponent<Text>().text = GetNedSpaceOrientations();
           //書き出す
           sw.WriteLine(GetNedSpaceOrientations());
           sw.Flush();
   }
```
上と同じことを書きますが、こんな感じでPushメソッド内に書き出し処理を入れて
ボタンのOnClickイベント(今No Functionになっているところ)で「Push」メソッドを選択すれば動作するのではないかと思います。
(ファイルを閉じる処理をどこで行うべきかは要件や仕様によるので入れていないです)
まずはボタンの基本的な使い方を学習した方がいいかもしれません。
[【uGUI】Buttonの使い方 - Qiita](https://qiita.com/2dgames_jp/items/b3d7d204895d67742d0c)
ファイル書き出しのソースコードは精査していませんが、強いて言うならCSVなのに改行区切り?と思います。空行も含むようになっていますし。
ログとして出したいだけ、テストとして今はこう書いている、というなら問題無いのですが少し気になりました。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る