Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 看来我的函数不是';t公开设置变量_C#_Unity3d - Fatal编程技术网

C# 看来我的函数不是';t公开设置变量

C# 看来我的函数不是';t公开设置变量,c#,unity3d,C#,Unity3d,Adjust方法中的StreamWriter创建一个名为“.txt”的文本文件。我希望该文件的标题带有传递到过程中的TextInput 调试后,似乎ProcessInput是过程末尾的正确值,但调整开头为空 public class Brain : MonoBehaviour { public GameObject Output, Input, AdjustDbInput; string ProcessInput; public void Process (Text

Adjust
方法中的
StreamWriter
创建一个名为“.txt”的文本文件。我希望该文件的标题带有传递到
过程中的
TextInput

调试后,似乎
ProcessInput
过程
末尾的正确值,但
调整
开头为空

public class Brain : MonoBehaviour 
{
    public GameObject Output, Input, AdjustDbInput;
    string ProcessInput;

    public void Process (Text TextInput) 
    {
        ProcessInput = TextInput.text;
        if (System.IO.File.Exists(Application.dataPath + "/" + ProcessInput + ".txt"))
            Output.GetComponent<Text>().text = 
                System.IO.File.ReadAllText($"{Application.dataPath}/{ProcessInput}.txt");
        else
        {
            Input.gameObject.SetActive(false);
            AdjustDbInput.gameObject.SetActive(true);
        }
    }

    public void Adjust (Text Response) 
    {
        StreamWriter writer = new StreamWriter(${Application.dataPath}/{ProcessInput}.txt");
        writer.WriteLine(Response.text);
        writer.Close();
        Input.gameObject.SetActive (true);
        AdjustDbInput.gameObject.SetActive (false);
    }
}
公共类大脑:单一行为
{
公共游戏对象输出、输入、调整输入;
字符串处理输入;
公共作废流程(文本输入)
{
ProcessInput=TextInput.text;
if(System.IO.File.Exists(Application.dataPath+“/”+ProcessInput+“.txt”))
Output.GetComponent()。文本=
System.IO.File.ReadAllText($“{Application.dataPath}/{ProcessInput}.txt”);
其他的
{
Input.gameObject.SetActive(false);
AdjustDbInput.gameObject.SetActive(真);
}
}
公共空间调整(文本响应)
{
StreamWriter writer=newstreamwriter(${Application.dataPath}/{ProcessInput}.txt”);
writer.WriteLine(Response.text);
writer.Close();
Input.gameObject.SetActive(true);
AdjustDbInput.gameObject.SetActive(假);
}
}

因此,您使用字符串变量/field
ProcessInput
来生成文件名。此字段在
Process
方法中设置。调用Adjust方法之前是否执行
Process
实现?还要注意,
ProcessInput
Brain
的一个实例字段,这会导致我的下一个问题:当你调用
Adjust
时,你是否调用了与调用
Process
方法完全相同的
Brain
对象实例?谢谢你的回答。是的,Adjust是在Process之后调用的。至于你的另一个问题,我不确定,但我也会检查我什么时候能调用。