C# 如何将屏幕截图从Unity保存到azure存储?
我正在进行一个unity项目,我需要将游戏中的某个屏幕截图保存到azure存储中的一个容器中。 我已经配置了azure帐户并创建了容器 我设法拍摄了屏幕截图并将其保存在我计算机上的一个目录中,但每当我试图将其保存到我的存储器中时,我都做不到,因为它没有找到它。我去了那个目录,我可以看到截图 以下是我如何完成屏幕截图部分:C# 如何将屏幕截图从Unity保存到azure存储?,c#,azure,unity3d,C#,Azure,Unity3d,我正在进行一个unity项目,我需要将游戏中的某个屏幕截图保存到azure存储中的一个容器中。 我已经配置了azure帐户并创建了容器 我设法拍摄了屏幕截图并将其保存在我计算机上的一个目录中,但每当我试图将其保存到我的存储器中时,我都做不到,因为它没有找到它。我去了那个目录,我可以看到截图 以下是我如何完成屏幕截图部分: public void TappedCaptureScreenshot() { string filename = string.Format("{0}
public void TappedCaptureScreenshot()
{
string filename = string.Format("{0}.png", DateTime.UtcNow.ToString("yy-MM-dd-HH-mm-ss-ff"));
Debug.Log("aca estoy 0 " + filename);
localPath = Screenshot.Capture(filename);
Debug.Log("local path " + localPath);
isCaptured = true;
//label.text = "Capture as: " + localPath;
}
这是我保存图片的方式:
public void TappedSave()
{
byte[] imageBytes = File.ReadAllBytes(localPath);
PutImage(imageBytes);
}
private void PutImage(byte[] imageBytes)
{
string filename = Path.GetFileName(localPath);
Debug.Log("Aca estoy 2 " + filename);
//label.text = "Put " + filename;
StartCoroutine(blobService.PutImageBlob(PutImageCompleted, imageBytes, container, filename, "image/png"));
}
然后每当我点击某个按钮时,这两个函数都会被调用。
这是我得到的错误:
FileNotFoundException:找不到文件“C:..\20-02-23-21-12-59-06.png”
我认为这个错误与图像字节有关,但我不知道为什么。有什么建议吗?显然,
C:..\20-02-23-21-12-59-06.png
不是正确的文件路径。您是否从stringfilename=Path.GetFileName(localPath)中获得错误代码>?调试应用程序以查看localPath
的值。谢谢您的回答。我不知道问题出在哪里,但我解决了将两个函数放在不同的按钮中而不是放在同一个按钮中的问题。显然,C:..\20-02-23-21-12-59-06.png
不是正确的文件路径。您是否从stringfilename=Path.GetFileName(localPath)中获得错误代码>?调试应用程序以查看localPath
的值。谢谢您的回答。我不知道问题出在哪里,但我解决了将两个功能放在不同的按钮中而不是放在同一个按钮中的问题。