c# 通过解析mp3规范命名并上传服务器
引用
using Shell32;
private void Open_Click(object sender, RoutedEventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "MP3 Files(.mp3)|*.mp3|WMA Files(*.wma)|*.WMA";
//ofd.Multiselect = true; //允许多选
ofd.RestoreDirectory = true; //记住上一次的文件路径
ofd.ShowDialog();
FilePath = ofd.FileName;
if (FilePath != "")
{
string OpenFileType = Path.GetExtension(FilePath);
FileInfo FileLenght = new FileInfo(FilePath);
if (FileLenght.Length > )
{
FuncClass.ShowError("Too Large!");
}
else
{
ShellClass sh = new ShellClass();
Folder dir = sh.NameSpace(Path.GetDirectoryName(FilePath));
FolderItem item = dir.ParseName(Path.GetFileName(FilePath));
string NewPath = Path.GetDirectoryName(FilePath) + "\\" + dir.GetDetailsOf(item, ) + " - " +
dir.GetDetailsOf(item, ) + OpenFileType;
if (!File.Exists(NewPath))
{
File.Move(FilePath, NewPath);//重命名其实就是move
}
dir = sh.NameSpace(Path.GetDirectoryName(NewPath));
item = dir.ParseName(Path.GetFileName(NewPath));
PathFile.Text = NewPath;
FileName.Text = Path.GetFileNameWithoutExtension(NewPath) + OpenFileType;
MusicName.Text = dir.GetDetailsOf(item, );
WriteWords.Text = "";
WriteMusic.Text = "";
Singer.Text = dir.GetDetailsOf(item, );
Album.Text = dir.GetDetailsOf(item, );
Time.Text = dir.GetDetailsOf(item, );
}
}
}
解析说明:例子周杰伦 - 青花瓷.mp3
-1 项目类型:MP3文件
大小:3.62
参与创作的艺术家:周杰伦
长度:00:03:57
0:青花瓷.mp3(文件名)
1: 3.62MB(大小)
2: MP3文件(项目类型)
3:xxxx-xx-xx xx:xx(修改时间)
9: 音频(文件类型)
10:Administrators(用户名)
11:音乐(所属)
13:周杰伦(演唱)
14:一人一首成名曲(专辑)
15: 2002(年份)
19:未分级
20:周杰伦(演唱)
21:青花瓷(歌名)
27: 00:03:57
28:128kbps
29:否
修改后周杰伦 - 青花瓷.mp3
图例:

打开后显示已修正得到歌曲信息:

private void UpLoad()
{ //wenserver需自己定义
WebClient webclient = new WebClient();
byte[] responseArray = webclient.UploadFile("http://192.168.1.11/WebForm1.aspx ", "POST", @"" + FilePath + "");//http路径
string getPath = Encoding.GetEncoding("UTF-8").GetString(responseArray);
FuncClass.ShowInformation("歌曲已"+getPath + "上传到服务器");//返回信息
}
c# 通过解析mp3规范命名并上传服务器的更多相关文章
- 优化Recorder H5录音:可边录边转码上传服务器,支持微信提供Android IOS Hybrid App源码
Recorder H5 GitHub开源库随着支持功能的增多,音频转码处理效率渐渐的跟不上需求了,近期抽时间对音频转码部分进行了升级优化,以支持更多实用的功能. 另外IOS的Hybrid App也完成 ...
- ios-高德、百度后台定位并上传服务器
一.配置高德或百度的后台定位框架和代码(略). 二.配置app不被系统kill,定时获取地理位置信息,并上传服务器(AppDelegate里面). 具体代码: 1. - (void)applicati ...
- Linux 本地文件或文件夹上传服务器
Linux 本地文件或文件夹上传服务器 一.权限设置 本地文件或文件夹上传服务器,你首先需要获取到root权限: 二.上传方式 上传方式有两种 : 1.通过 FTP 客户端上传文件或文件夹: 2.通过 ...
- IOS 视频.图片上传服务器
//上传视频 AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; manager.requestSerializer. ...
- HTTP文件上传服务器-支持超大文件HTTP断点续传的实现办法
最近由于笔者所在的研发集团产品需要,需要支持高性能的大文件http上传,并且要求支持http断点续传.笔者在以前的博客如何实现支持大文件的高性能HTTP文件上传服务器已经介绍了实现大文件上传的一些基本 ...
- vue代码上传服务器后背景图片404解决方法
问题:代码上传服务器后,图片404,使用的font-awesome图标也是404 解决办法: 如果你用了vue-cil,那么在build目录下找到utils.js中的ExtractTextPlugin ...
- eclipse导出文件上传服务器
[1]导出 选择项目 文件导出 输入导出路径如f盘ftp文件夹下 [2]利用scr上传服务器工具 上传到 home/tomcat/app/项目名称/ 不导入upload文件 [待完善]
- $.ajax json 在本地正常 上传服务器不正常
$.ajax( { url:"url",// 跳转到 action data:{name ...
- ios中摄像头/相册获取图片压缩图片上传服务器方法总结
本文章介绍了关于ios中摄像头/相册获取图片,压缩图片,上传服务器方法总结,有需要了解的同学可以参考一下下. 这几天在搞iphone上面一个应用的开发,里面有需要摄像头/相册编程和图片上传的问 ...
随机推荐
- HTML5动态分页效果代码
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- mysql READ-COMMITTED 模式下 行锁不会升级到表级锁
mysql> select sn,id,info from s100 group by id; +-----+------+------+ | sn | id | info | +-----+- ...
- 多校第五场 归并排序+暴力矩阵乘+模拟+java大数&记忆化递归
HDU 4911 Inversion 考点:归并排序 思路:这题呀比赛的时候忘了知道能够用归并排序算出逆序数,可是忘了归并排序的实质了.然后不会做-- 由于看到题上说是相邻的两个数才干交换的时候.感觉 ...
- mooon编译系统介绍(可复用Makefile)
mooon编译系统介绍(可复用Makefile).pdf(ChinaUnix下载) CSDN下载:http://download.csdn.net/detail/aquester/5626929 mo ...
- php中如何开启GD库
php中开启GD库 在浏览器输入启用wamp下的GD库(否则验证码可能不能用) D:\lamp\php\php.ini 文件
- pv操作 生产者消费者
#include <iostream> #include <stdlib.h> #include <pthread.h> #include <semaphor ...
- ThinkPHP框架配置自定义的模板变量(十)
原文:ThinkPHP框架配置自定义的模板变量(十) 模板替换(手册有详细介绍对应的目录) __PUBLIC__:会被替换成当前网站的公共目录 通常是 /Public/ __ROOT__: 会替换成当 ...
- hdu1217Arbitrage--解题报告
题意:套利,一个US币换取0.5 British pound,而1 British pound 换取10.0 French francs,同一时候 1 French franc buys 0.21 U ...
- Ubuntu14.04搭建android开发环境
一 下载ADT 官方下载地址:http://developer.android.com/sdk/index.html(须要FQ或者改动host) 二 解压 1 使用终端将下载的文件解压当前文件夹下: ...
- AccountManager使用教程
API解读 这个类给用户提供了集中注冊账号的接口.用户仅仅要输入一次账户password后,就能够訪问internet资源. 不同的在线服务用不同的方式管理用户,所以account manager 为 ...