我如何在Xamarin.ios(PHP会话)上创建文件[已解决]

问题描述 投票:0回答:2

我需要在Xamarin.ios的应用程序根目录上创建一个(.txt)文件,因此需要在内存中存储一​​个String,其中包含一个UserName,用户登录后,我可以使用每个String来运行一个“ “ httprequest”在线访问mySql数据库。与PHP中的会话类似的过程,但是在客户端和C#中。.谢谢。我只是尝试使用cookie,但是我需要在每个类和每个StoryBoard中的UserName处进行访问。

我只是尝试编写可序列化的JSON文件:

String NU = "NomeUtente=" + NomeUtente.Text;
string json = JsonConvert.SerializeObject(NU, Formatting.Indented);
System.IO.File.WriteAllText(@"/558gt.txt", json);

但是Xamarin.ios抛出异常:

SystemUnauthorizedAccessexception->无法访问/558gt.txt路径。

c# php file xamarin xamarin.ios
2个回答
0
投票

如果需要存储数据,请使用Xamarin.Essentials.SecureStorage

Check documentation


0
投票

谢谢。我在ios文件系统上阅读了文档,并设法编写了读写包含用户名的Session文件所需的代码部分。

 try {
      //creo il file nella sandbox maledetta di iOS
      //create file Session
      var documents = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
      var filename = Path.Combine(documents, "Session.txt"); 
      //filename contiene la path completa di dove sta il file  
      File.WriteAllText(filename, NomeUtente.Text);

      }
      catch (Exception) {
           label1.Text = "Errore generico.";
      }

现在我在单独的课程和情节提要中读取了文件:

//Recupero il nomeutente
var documents = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
var filename = Path.Combine(documents, "Session.txt");
var NomeUtente = File.ReadAllText(filename); //contiene il NomeUtente
© www.soinside.com 2019 - 2024. All rights reserved.