コード例 #1
0
ファイル: MediaTags.cs プロジェクト: dxzl/mediatag-sharp
        //---------------------------------------------------------------------------
        /// <summary>
        /// Delete all media tags
        /// </summary>
        /// <param name="file">Media file name</param>
        /// <returns># deleted or a negative # if error</returns>
        public int DeleteAll(string file)
        {
            string ext = Path.GetExtension(file).ToLower();

            if (ext == ".wma" || ext == ".asf" || ext == ".wmv" || ext == ".wm")
            {
                MediaDataManager mdm = new MediaDataManager();

                if (mdm == null) return -10;

                try { return mdm.DeleteAllAttrib(file); }  // use -1 for the stream (all, I'm presuming...)
                catch { return -11; }
            }

            using (TagLib.File tagFile = TagLib.File.Create(file)) // Use taglib-sharp...
            {
                if (tagFile == null) return -12;

                try
                {
                    if (tagFile.Writeable)
                    {
                        tagFile.RemoveTags(TagTypes.AllTags);
                        tagFile.Save();
                        return 0; // Where is # deleted??? 0 means "no error" but count unknown :-)
                    }
                    else return -13;
                }
                catch { return -14; }
            }
        }