在Windows 8手机获得照片的真实姓名(Obtain real name of photo in

2019-10-18 08:42发布

我不能表现出我的照片我的图片库的真实姓名中的Windows Phone 8,我有一个有照片,其原来的名称是:查克·托德 - 爱因斯坦-2010-1.jpg,查克·托德 - 爱因斯坦-2010-2.jpg,查克·托德 - 爱因斯坦-2010-3.jpg。

我执行此代码:

MediaLibrary m = new MediaLibrary();        
for (int j = 0; j < m.Pictures.Count; j++)
{
     var r = m.Pictures[j];
     MessageBox.Show(r.Name);
}

而MessageBox的显示总是这个名字:“爱因斯坦用粉笔插画黑板由查克·托德2010写作”。

你怎么能获得原来的名字?

Answer 1:

我发现这个库,并修复了这个问题:

http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.media.phoneextensions.medialibraryextensions.getpath(v=xnagamestudio.42).aspx

using Microsoft.Xna.Framework.Media.PhoneExtensions;

MediaLibrary m = new MediaLibrary();        
for (int j = 0; j < m.Pictures.Count; j++)
{
  var r = m.Pictures[j];
  MessageBox.Show(MediaLibraryExtensions.GetPath(r));
}

有了这个代码,我得到的文件具有原始名称的完整路径。



Answer 2:

你可以试试这个:

r.getPath();

然后剥去在路径中的文件夹。



Answer 3:

作为官方文档显示 ,在访问时MediaLibrary并通过所产生的循环Picture列表,也没有相对路径,绝对路径或文件名对每个图像。

但有机会获得日期,名称(说明,如果有的话)和其他一些特性 - 这样的解决方案是在需要的时候生成自己的文件名。

如果我们看一下如何内置的Windows Phone相机应用,并自动上传到SkyDrive功能的工作,我的SkyDrive中相机胶卷具有下列文件名:

  • WP_20130716_001.jpg
  • WP_20130716_002.jpg
  • WP_20130716_003.jpg

上面的图案是很容易看到的重现(并与您的应用程序的名称替换WP):

  • WP(下划线)ISO日期格式(下划线)图像编号

你可能会使用name属性(即描述),以产生一个类似桌面的文件名,但name似乎是可选的,所以它是空白的大部分时间,以我的经验。



Answer 4:

该MediaLibrary API不提供访问原始文件名。

Picture.Name似乎已经由保存照片的应用程序指定的名称。 例如,对于通过IE从网上下载的图片,它包含类似C:\Data\Users\DefApps\AppData\INTERNETEXPLORER\Temp\Saved Images\image.jpg 。 如果图像是通过SkyDrive的应用程序保存,名称不包含.jpg在所有的扩展。



文章来源: Obtain real name of photo in windows phone 8