开发需要相机的Windows Phone 8应用程序。我通过阅读ChosenPhoto
属性中的Stream
来拍照并将照片上传到服务器。上传完成后,我需要重命名该文件以匹配某些本地约定。
所以我将OriginalName
属性传递给方法,但在重命名时会抛出FileNotFoundException
。
以下是重命名文件的方法:
public static void SetDocumentFlag(DocumentFlag flag, string photoName)
{
string fileName = Path.GetFileNameWithoutExtension(photoName);
string filenameWithFlag = null;
if (flag == DocumentFlag.Send)
{
if (!photoName.StartsWith(SEND_FLAG))
{
filenameWithFlag = "dsend_" + fileName;
}
else
{
filenameWithFlag = fileName;
}
}
else
{
if (!photoName.StartsWith(NOT_SEND_FLAG))
{
filenameWithFlag = "nsend_" + fileName;
}
else
{
filenameWithFlag = fileName;
}
}
string nameReplacement = photoName.Replace(fileName, filenameWithFlag);
File.Move(photoName, nameReplacement);// here throw the exception
File.Delete(photoName);
}
我不明白为什么抛出异常,因为照片已成功保存到相机胶卷。我可以在相机胶卷中找到图片。
我错过了什么?