Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > .NET Framework > Forum > C# เอาโค๊ดค้นหาเพลงซ้ำใน extreme karaoke มาให้ช่วยแก้ครับเหมือนมันยังช้าอยู่



 

C# เอาโค๊ดค้นหาเพลงซ้ำใน extreme karaoke มาให้ช่วยแก้ครับเหมือนมันยังช้าอยู่

 



Topic : 112523



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook



ผมดึงข้อมูลมาลงใน DataGridView ก่อนแล้วค่อยค้นหาทีละแถวที่ผมทำอยู่คือ
สร้าง Thread มา 10 Thread สำหรับ CheckFileDup โดยเอา
โดยค้นทีละ DataGridView.RowCount/10
เพลงทั้ง NCN และ EMK 1.5 ล้านกว่าเพลง ใช้เวลาค้นแล้วลบไฟล์ซ้ำ 12 ชั่วโมงกว่า
ก็เลยอยากให้ดูหน่อยครับว่ามีวิธีทำให้เร็วกว่านี้ไม๊
อีกอย่างผมต้องการให้ลบไฟล์แล้วก็ลบข้อมูลใน database ด้วยแต่ที่เคยทำมันจะช้าตอนลบข้อมูลใน database ผมก็เลยไม่ลบ

Code (C#)
namespace MIDI_System
{
    public static class CheckFileDupSetting
    {
        public static string FolKara = "";
        public static Label labelInvoke;
        public static int sngDel = 0;
        public static string FolDel = "";
        public static DataGridView GridView;
        public static int SongCheck = 0;
public static DataTable GetDataTableDBF(string _Path)
        {
            string PathData = "";
            if (_Path.ToUpper().EndsWith("\\DATA"))
            {
                PathData = _Path.ToUpper();
            }
            else
            {
                PathData = _Path.ToUpper() + "\\DATA";
            }
            string ConnectionString = "Dsn=dBASE Files;dbq=" + PathData.ToUpper() + ";defaultdir=" + PathData.ToUpper() + ";driverid=533;maxbuffersize=2048;pagetimeout=5";

            System.Data.Odbc.OdbcConnection conn = new System.Data.Odbc.OdbcConnection(ConnectionString);
            conn.Open();
            string strQuery = "SELECT CODE,TYPE,SUB_TYPE,ARTIST + TITLE as SongName FROM SONG order by ARTIST + TITLE";
            System.Data.Odbc.OdbcDataAdapter adapter = new System.Data.Odbc.OdbcDataAdapter(strQuery, conn);
            System.Data.DataSet ds = new System.Data.DataSet();
            adapter.Fill(ds);
            return ds.Tables[0];

        }
        public static void DelFile(string _FileName)
        {
            try { System.IO.File.Delete(_FileName); }
            catch
            {
                try
                {
                    System.IO.File.Move(_FileName, FolDel + "\\" + String.Format("{0:ddMMyyyyHHmmss}", DateTime.Now) + System.IO.Path.GetFileName(_FileName));
                }
                catch { }
            }
        }
    }

    public class CheckFileDup
    {
        System.Threading.Thread thd;
        int _Min;
        int _Max;
        public CheckFileDup(int min, int max)
        {
            _Min = min; _Max = max;
        }
        public void RunCheck()
        {
            thd = new System.Threading.Thread(new System.Threading.ThreadStart(CheckFile));
            thd.Start();
        }
        private void CheckFile()
        {
            string cri = "";
            for (int i = _Min; i <= _Max; i++)
            {
                if (CheckFileDupSetting.GridView[3, i].Value.ToString().Trim().Replace(" ", "").ToUpper() != cri)
                {
                    cri = CheckFileDupSetting.GridView[3, i].Value.ToString().Trim().Replace(" ", "").ToUpper();
                }
                else
                {
                    CheckFileDupSetting.sngDel++;

                    if (CheckFileDupSetting.GridView[2, i].Value.ToString() == "EMK")
                    {
                        CheckFileDupSetting.DelFile(CheckFileDupSetting.FolKara + "\\SONGS\\MIDI\\EMK\\" + CheckFileDupSetting.GridView[0, i].Value.ToString().Substring(0, 1) + "\\" + CheckFileDupSetting.GridView[0, i].Value.ToString() + ".emk");
                    }
                    else if (CheckFileDupSetting.GridView[2, i].Value.ToString() == "NCN")
                    {
                        CheckFileDupSetting.DelFile(CheckFileDupSetting.FolKara + "\\SONGS\\MIDI\\NCN\\Lyrics\\" + CheckFileDupSetting.GridView[0, i].Value.ToString().Substring(0, 1) + "\\" + CheckFileDupSetting.GridView[0, i].Value.ToString() + ".lyr");
                        CheckFileDupSetting.DelFile(CheckFileDupSetting.FolKara + "\\SONGS\\MIDI\\NCN\\Cursor\\" + CheckFileDupSetting.GridView[0, i].Value.ToString().Substring(0, 1) + "\\" + CheckFileDupSetting.GridView[0, i].Value.ToString() + ".cur");
                        CheckFileDupSetting.DelFile(CheckFileDupSetting.FolKara + "\\SONGS\\MIDI\\NCN\\Song\\" + CheckFileDupSetting.GridView[0, i].Value.ToString().Substring(0, 1) + "\\" + CheckFileDupSetting.GridView[0, i].Value.ToString() + ".mid");
                    }

                }
                CheckFileDupSetting.SongCheck = CheckFileDupSetting.SongCheck + (i - _Min);
                CheckFileDupSetting.labelInvoke.Invoke(new Action(() => { CheckFileDupSetting.labelInvoke.Text = "Song All:" + (CheckFileDupSetting.GridView.RowCount - 1) + " Song Check:" + CheckFileDupSetting.SongCheck + " Song Delete:" + CheckFileDupSetting.sngDel + " Cri:" + cri; }));
                System.Threading.Thread.Sleep(5);
            }


        }

    }
}




Tag : .NET, Win (Windows App), C#, VS 2012 (.NET 4.x), Windows







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-11-12 16:35:10 By : lamaka.tor View : 7031 Reply : 37
 

 

No. 1



โพสกระทู้ ( 821 )
บทความ ( 0 )



สถานะออฟไลน์


ผมว่าดึงข้อมูลทั้งหมดเข้า database แล้ว query ข้อมูลที่ซ้ำ แล้วค่อยลบน่าจะเร็วสุดน่ะครับ
ถ้าทำแล้วช้า ลองดูเรื่อง Index ว่าทำไว้แบบไหน
เพราะข้อมูล 1.5 ล้าน ไม่น่าจะช้ามากน่ะครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-12 17:02:17 By : fonfire
 


 

No. 2



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ปกติมันเป็น database ครับพี่ SONG.DBF
ติดปัญหาว่าถ้าใช้ query ลบผมไม่รู้จะเขียนให้ file ยังไงอ่าครับ
และยังต้องวน loop หาชื่อซ้ำอีกก็เลยต้องทำแบบนี้ครับ
ขอโค๊ดหน่อยได้ไม๊ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-12 17:11:40 By : lamaka.tor
 

 

No. 3



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


สร้าง ตารางใหม่ มา รับข้อมูล ทำ index ที่ต้องการ

ทำโดยไม่ต้อง ลข เพราะ ลบมันจะช้า ไว้ลบมันทั้งหมดทีเดียวเลย

ปล. หรือไม่ต้องสร้างใหม่ ก็ได้ เพิ่ม ฟีลด์ ขึ้นมา 1 ฟีลด์ ไว้ mark ว่าจะลข หรือ จะเก็บ

0 = ยังไม่เช็ค
1 = เก็บ
2 = ลบ

แล้ว เวลาคิวรี่ มา ก็ where mark=0 ด้วย จะได้ไม่ หาซ้ำ จะเลิกเมื่อไหร่ก็ได้ พรุ่งนี้มาทำต่อ ไม่ทำซ้ำ


ประวัติการแก้ไข
2014-11-12 17:22:17
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-12 17:17:55 By : Chaidhanan
 


 

No. 4



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

แล้วเขียน SQL ลบไฟล์ยังไงครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-12 17:47:22 By : lamaka.tor
 


 

No. 5



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอนนี้ติดปัญหาที่ว่าการลบไฟล์ครับ
ส่วนตัว คิดไม่ออกว่าถ้าจะลบไฟล์โดยใช้ SQL ต้องทำยังไง
แต่ถ้าลบข้อมูลซ้ำพอได้ยุครับ พอต้องมาลบข้อมูลด้วย ลบไฟล์ด้วย เหมือว่าจะต้องทำทีละข้อมูล(ตามความเข้าใจผมครับ)
ตัวนี้เป็นรูปแบบ database ครับ

Database

ตัวนี้เป็นรูปแบบ database ที่ผม query ครับ

query1

ใครพอมีโค๊ดที่จะทำให้เร็วขึ้นรบกวนด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-12 17:59:31 By : lamaka.tor
 


 

No. 6



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


เพิ่ม field ได้ไหมครับ ถ้าเพิ่ม ได้ ก็เพิ่ม ตามที่ผมบอก เลยครับ

สำหรับ c# ผมก็ไม่ค่อยจะคล่อง

แต่วิธีการ สร้าง field มาทำ มันช่วยให้ไม่ทำงานซ้ำซ้อนนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-12 18:08:57 By : Chaidhanan
 


 

No. 7



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ใน database แก้ไข field ไม่เป็นผลครับเพราะทุกครั้งที่เรา เพิ่มเพลงใหม่จากโปรแกรม Extream Kara
มันจะลบไฟล์เก่าทิ้งแล้วสร้างใหม่ครับ ต้องสร้างโดย SQL ครับ
โดยหลักการผมทำแบบนี้ครับ
1. เอา ARTIST+TITLE =Songname
2. ดูแต่ละ Songname = criteria ว่าซ้ำกันถ้าซ้ำ ก็ลบ ไฟล์โดยถ้า SUB_TYPE EMK ให้ลบใน EMK
ถ้าเป็น LYR ให้ลบใน NCN ของแต่ละโฟลเดอร์อีกทีครับ

แต่ก่อนลบ ไฟล์ด้วย ข้อมูลใน database ด้วย แสนกว่าใช้เวลา เกือบวันเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-12 18:18:28 By : lamaka.tor
 


 

No. 8



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ใน SQL มีคำสั่งจัดกลุ่มข้อมูลที่ซ้ำกันให้เป็นกลุ่มๆไม๊ครับแบบนี้น่าจะได้
อย่างมีเพลง ล้านกว่าแต่จัดแล้วได้ แสนกลุ่มที่ซ้ำประมาณนี้อ่าครับ
แล้วค่อยเอาแต่ละกลุ่มไปเข้า thead เพื่อลบไฟล์อีกที
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-12 18:27:26 By : lamaka.tor
 


 

No. 9



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


Code (SQL)
DELETE TB1
FROM SONG AS TB1  
RIGHT JOIN ( 
  SELECT MIN(CODE) AS M_ID, SongName
  FROM SONG GROUP BY SongName HAVING COUNT(CODE)>1
) AS TB2
ON TB1.SongName = TB2.SongName
WHERE TB1.CODE<>TB2.M_ID


อันนี้เป็น code sql ล้วนๆ ครับ

ถ้า SongName เป็น index ก็รับรอง ว่าเร็ว แน่นอนครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-12 19:45:37 By : Chaidhanan
 


 

No. 10



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 9 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-11-12 19:45:37
รายละเอียดของการตอบ ::
ขอบคุณครับ ขอถามประดับความรู้นิดนึงครับ
MIN(CODE) มันจะวนยุในค่าเดิมป่าวครับเพราะ CODE จะไม่ถูกลบไปอยู่แล้ว(ถ้าปล่อยโง่ไปก็ขอโทษด้วยครับ)


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 08:57:52 By : lamaka.tor
 


 

No. 11



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


HAVING COUNT(CODE)>1
ตัวนี้เป็นตัวกำหนดครับ

มันจะทำงาน ก็ต้อเมื่อ มีซ้ำกัน ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 10:23:25 By : Chaidhanan
 


 

No. 12



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ขอคุณที่ให้ความรู้ครับ

ทานที่ได้บุญที่สุดคือ 'ปัญญาทาน'
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 10:35:33 By : lamaka.tor
 


 

No. 13



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

โทษทีครับ ติดปัญหาเรื่องลบไฟล์ครับ
มีวิธีลบไฟล์ทีละเยอะๆไม๊ครับ เช่น เพลง abvcbcbc มี Code A0001,E0002,F01200..... แบบนี้อ่าครับ
แล้วลบไฟล์พวกนี้พร้อมกันเลย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 10:55:05 By : lamaka.tor
 


 

No. 14



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


string[] fileList = filelistname
foreach(string file in fileList)
{
System.Diagnostics.Debug.WriteLine(file + "will be deleted");
System.IO.File.Delete(file);
}
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 11:09:16 By : Chaidhanan
 


 

No. 15



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 14 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-11-13 11:09:16
รายละเอียดของการตอบ ::
แบบนั้นช้าครับผมลองแล้วมันจะติดตอนเรา add เข้าไปเพราะต้องค้นหา Code เพลงซ้ำอีกรอบครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 11:35:45 By : lamaka.tor
 


 

No. 16



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


ก็ต้องรอคนอื่นล่ะครับ ผมมีความรู้อยู่แค่นี้ล่ะครับ

เพราะการลบ มันมี 2 อย่าง ชื่อเต็ม กับ wildcard
เมื่อ ทำ wildcard ไม่ได้ก็ต้องใช้ชื่อเต็ม

เนื่องจากผมไม่รู้ flow การทำงาน น่ะครับ ก็แนะนำได้แค่นี้

บางงานมันติดช่วงเวลา ก็ต้องปิด server เพื่อปรับปรุงให้ดีขี้น
ไม่อาจ เมนเทนฯ พร้อมให้บริการได้ ก็ต้องเลือกเอาล่ะครับ ว่าจะทำหรือไม่ทำ

การคิวรี่เพื่อลบ ถ้ามันเกี่ยวเนื่องกับไฟล์ที่ต้องลบไปพร้อมกัน
ก็ต้องคิวรี่ ให้ได้ชื่อไฟล์มาก่อน แล้ว update field ชื่อไฟล์ ที่ลบ เป็นค่าอื่น เช่น for_delete
พอได้ ชื่อไฟล์ มาแล้ว ก็เอาไปลบ ไฟล์ ออก

ตัวโปรแกรม เวลาจะโชว์เพลง ก็ตรวจสอบ where name <> for_delete
server ก็ดำเนินต่อได้ ไม่ต้องหยุด

และก็ไม่จำเป็น ต้องทำทีเดียวหมด ทำที่ละ 100 ทีละ 1000 ก็ยังได้เลย
เขียนโปรแกรม ให้จำค่าสุดทัายที่ทำการลบ ซักวันมันก็หมด
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 12:17:14 By : Chaidhanan
 


 

No. 17



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ครับขอบคุณมากครับ
ตัว database เองคงเล่นด้วยยาก ผมก็เลยเลี่ยง หันมาลบผ่าน datagrid เอา
พอดีเพื่อนชอบร้อง คาระโอะเกะ
ผมก็เลยโหลดมาจากเว็บต่างๆครับ
แตกไฟล์ 12 ชั่วโมง
จัดเรียง A-Z อีก เกือบ 24 ชั่วโมง
ได้ประมา 2.5 ล้านเพลง(ที่ list จากโปรแกรม Extream karaoke แล้ว)
แล้วลบเพลงซ้ำอีก 10 กว่า ชั่วโมง

ผมเห็นว่าหลายคนที่ชอบร้อง คาระโอะเกะ ก็คงเจอกะปัญหาเพลงซ้ำผมก้เลยหาวิธีลบที่มันง่ายๆดูครับ
ผมจะพยายามต่อไปได้ดีกว่าที่ทำอยู่จะเอามาแจกให้ใช้ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 13:45:08 By : lamaka.tor
 


 

No. 18



โพสกระทู้ ( 154 )
บทความ ( 0 )



สถานะออฟไลน์


ช่วยไม่ได้มาก แต่ก็พอทำให้เร็วขึ้น

Code (C#)
// เอา Ling มาใช้ครับ
// using System.Linq

var files = // ได้มาจากค้นหาแล้วเป็น array file ที่ต้องการลบ
files.AsParallel().ForAll((f) => f.Delete());

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 17:01:14 By : gunnermontana
 


 

No. 19



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 18 เขียนโดย : gunnermontana เมื่อวันที่ 2014-11-13 17:01:14
รายละเอียดของการตอบ ::


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 17:09:27 By : lamaka.tor
 


 

No. 20



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 18 เขียนโดย : gunnermontana เมื่อวันที่ 2014-11-13 17:01:14
รายละเอียดของการตอบ ::
file.Delete(filename) ผมจะเจอว่าบางไฟล์ลบไม่ได้
ผมเลยเลี่ยงมาเป็นแบบนี้

Code (C#)
public static void DelFile(string _FileName)
        {
            try { System.IO.File.Delete(_FileName); }
            catch
            {
                try
                {
                    System.IO.File.Move(_FileName, FolDel + "\\" + String.Format("{0:ddMMyyyyHHmmss}", DateTime.Now) + System.IO.Path.GetFileName(_FileName));
                }
                catch { }
            }
        }

มีวิธีที่แบบว่ายังไงก็ลบได้มีไม๊ครับ(ถึงแม้ไฟล์จะเปิดอยู่ อะไรทำนองนั้น)

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 17:34:52 By : lamaka.tor
 


 

No. 21



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


http://stackoverflow.com/questions/5232647/how-can-i-delete-a-file-that-is-in-use-by-another-process
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-13 21:34:02 By : Chaidhanan
 


 

No. 22



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ใช่แล้วครับตอนนี้ผมใช้วิธี Move เป็นวิธีที่ถูกต้องแล้วใช่ไม๊ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-14 07:25:49 By : lamaka.tor
 


 

No. 23

Guest


ถ้าเขียนเสร็จ ถือว่ามีประโยชน์มากเลยครับ ผมก็ชอบร้องคาราโอเกะ ซื้อโปรแกรมแท้มา แต่ติดที่เพลงซ้ำกันมาก
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-27 23:51:38 By : มานิด
 


 

No. 24



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 23 เขียนโดย : มานิด เมื่อวันที่ 2014-11-27 23:51:38
รายละเอียดของการตอบ ::
ตอนนี้เขียนเสร็จแล้วครับ
1.จัดการ NCN,EMK เรียง A-Z
2.หาเพลงซ้ำ NCN,EMK
3.จัดการไฟล์ AVI(ตอนนี้กำลังหาเพลงยุ ท่านใด้ใจดีแนะนำ link ก็ได้นะครับ ตอนนี้ได้ 2000 กว่า)

ต่อไปคือ จัดการไฟล์ VDO ต่างๆทั้งหมด ค้นหาเพลงซ้ำถ้าเป็น VDO ให้เก็บไว้
อยากเอาโค๊ดทั้งหมดมาลงครับแต่มันเยอะเกินถ้าอยากได้ PM มาครับเดี๋ยวส่งให้


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-28 08:46:39 By : lamaka.tor
 


 

No. 25

Guest


เพิ่มเติมนะครับ การลบเพลงซ้ำ ncn emk ถ้าเปิดฟังไม่ได้ หรือ ไม่แสดง lyric ให้เห็น จะกัดการยากมาก เพราะเราไม่รู้ว่ามิดี้ตัวไหนดี ไม่ดี ปาดตรงไม่ตรง เขียนโน๊ตดนตรีเพราะบ้างไม่เพราะบ้าง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-29 08:14:34 By : ปราโมช
 


 

No. 26



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 25 เขียนโดย : ปราโมช เมื่อวันที่ 2014-11-29 08:14:34
รายละเอียดของการตอบ ::
ช่ายครับ..
ผมเขียนตัวจัดการ lyric ไว้แล้วครับถ้าเป็นไฟล์ว่างไม่มีข้อความสั่งลบทิ้ง
ค่อยไปจัดการ ncn แบบนี้จะไม่มีปัญหาครับ
emk ที่เจอปัญหาส่วนใหญ่จะเป็นตัวที่เราแปลงจาก ncn >> emk เอง(ไม่ได้มากะโปรแกรม)
แต่ถ้าจัดการ ncn ค่อยแปลงก็ไม่มีปัญหาเช่นกันครับ
ประมาณว่า
1.จัดการ lyric
2.จัดการ ncn
3.จัดการ emk
4. list song
5.ลบเพลงซ้ำ
6. list song

แหล่มครับ
ตอนนี้ตัดเพลงซ้ำจาก 2 ล้านกว่า ไง๋ เหลือแค่ 3 หมื่นกว่าเอง 5555
แต่มันยังติดที่ว่าบางทีชื่อคนร้อง เป็น ไทย บ้าง Eng บ้าง
คราวนี้ก็จนใจคิดวิธีเร็วๆไม่ออก แต่ตัดได้แค่นี้ก็แหล่มแระครับ(ดีกว่าโปรแกรมที่แถมมาด้วยเป็นกอง)

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-29 09:51:21 By : lamaka.tor
 


 

No. 27



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

พอจะมีใครมีวิธีอ่านไฟล์ emk ไม๊ครับผมอยากลองศึกษาดูบ้าง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-29 10:03:31 By : lamaka.tor
 


 

No. 28



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


ผมว่าเอาแค่ที่ทำได้น่าจะพอแล้วนะครับ อย่าไปถึงขนาดนั้นเลย

ทำแค่นี้ เจ้าของเพลง เจ้าของโปรแกรมเขาก็ร้องไห้แล้วล่ะครับ
สงสารเจ้าของลิขสิทธิ์เขาบ้างนะครับ

แต่ถ้าอยากได้จริงๆ ... ไม่บอกครับ

และผมไม่แนะนำให้แจกครับ ศึกษาลองทำใช้เอง ทำไปเถอะครับ
แต่เอาเพลงเขามาแจก ผมแช่งให้ตำรวจจับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-29 10:19:45 By : Chaidhanan
 


 

No. 29



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 28 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-11-29 10:19:45
รายละเอียดของการตอบ ::
ที่ผมใช้อยู่มันเป็นของฟรีตั้งแต่แรกแล้วครับ
ก็เลยอยากแบ่งปัน

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-11-29 10:44:07 By : lamaka.tor
 


 

No. 30

Guest


ไม่แจกให้ทดสอบใช้งานบ้างหรอครับท่าน หรือจะขายก็ได้ครับ
[email protected]
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-20 11:56:42 By : มาโนชย์
 


 

No. 31



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

แบ่งกันเล่นครับ
โค้ดบ้านๆของผมครับไม่เคยหวงครับเพราะยังไงก็ไม่ตรงสายงานยุแร้ว 55555
https://drive.google.com/folderview?id=0B-JZ2hYujzUAMGFIemQtdzdTTU0&usp=sharing


ประวัติการแก้ไข
2014-12-20 12:47:34
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-20 12:06:04 By : lamaka.tor
 


 

No. 32

Guest


เปิดแล้ว ไม่เห็นมีอะไรเลยครับ ว่างเปล่าครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-22 19:43:23 By : มาโนชย์
 


 

No. 33



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

โทษทีครับมันบอกว่าไฟล์ผมเป็นไวรัส 5555
เอาไปใหม่ครับ
https://drive.google.com/file/d/0B-JZ2hYujzUAclVsUjdLQW16OTQ/view?usp=sharing
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-23 09:28:16 By : lamaka.tor
 


 

No. 34



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

มาใหม่อีกแล้วครับคราวนี้เร็วกว่าเดิมเยอะ
https://drive.google.com/file/d/0B-JZ2hYujzUAaFdmRW9DbWxZZmc/view?usp=sharing
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-26 10:25:44 By : lamaka.tor
 


 
ตอบความคิดเห็นที่ : 34 เขียนโดย : lamaka.tor เมื่อวันที่ 2014-12-26 10:25:44
รายละเอียดของการตอบ ::
ขอลิ้งใหม่ได้ไหมครับผม

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2022-02-08 23:55:39 By : สุกฤษฏิ์ ปานพายับ
 


 
แบบออโต้เน้นคุณภาพ ไม่มีครับ อย่างน้อยก็ตอนนี้ เพราะอะไร ก็ตามความเห็น 25
ต้องเขียนแบบ many-in one-out analysts ซึ่งตามเทคปัจจุบันอาจต้องนำเอไอ เข้ามาช่วย
โดยที่เอไอต้องรู้จักประมวลผลทั้งงาน data, text synchronization และ music theory
...และแน่นอนไม่คุ้มกับเวลา สู้เขียนโปรแกรมคาราโอเกะใหม่เลยไม่ได้ โดยล็อกไม่ให้มีการเพิ่มเพลงใหม่ที่
ซ้ำกันทั้งชื่อเพลง ศิลปิน และคีย์ ง่ายๆ คือวิธีคัดกรองเพลงเดียวกัน แต่คนละเวอร์ชั่น

โปรแกรมคัดเพลงซ้ำของ extreme จึงมีประโยชน์มากที่สุด เพราะจะมี lyrics แสดง ให้เลือกจะทำให้คัดเพลงซ้ำออก
ได้มีประสิทธิภาพในระดับหนึ่ง เพราะสามารถดูเนื้อ และคีย์ก่อนลบได้ แต่ปัญหาคือผู้พัฒนาเลิกทำต่อนานแล้ว ผมเคย
re ดูพบว่าโปรแกรมนี้ถูกพัฒนาขึ้นด้วย vb5 ปล่อยให้ใช้ประมาณ 2007-2008 มั้ง จากนั้นก็ไม่เห็นของเจ้าใดทำออกมาไดดีเท่า

ถ้าจะทำแนะนำให้เขียนแบบเนตีฟหรือปาสคาลตามโปรแกรมเอกตรีมเลย โดยลิสเตอร์ให้ได้รายการล่าสุดก่อนแล้วอ่านจาก
ฐานข้อมูล(เอกตรีมเก็บรายการด้วย ฟอกโปรดาตาเบส) ตอนคิวรี ใส่เงื่อนไขเวลา จะได้เพลงใหม่ล่าสุดเพลงเดียว หรืออาจอาจมีเงื่อนไข
อื่นๆ เช่น คีย์ สกุลไฟล์ หรือ คนร้อง ก็จะช่วยคัดกรองได้ดีขึ้น อย่าอ่านจาก file system ช้าล้านปีแสง

แนะนำได้แค่นี้ ที่เหลืออยู่ที่ จขลขส และ ตัวท่านเอง

ปล
Extreme ก็นำของฝรั่งมาต่อยอดไม่ได้คิดเองร้อย เมื่อหลายปีก่อนผมเห็นเขาโยนขึ้นกิตแล้ว ค้นดูได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2022-02-09 23:03:21 By : 009
 


 

No. 37



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 35 เขียนโดย : สุกฤษฏิ์ ปานพายับ เมื่อวันที่ 2022-02-08 23:55:39
รายละเอียดของการตอบ ::

ต้องขออภัยที่ผม ลบไฟล์ทิ้งไปหมดแล้วครับ
ตอนนี้ กำลัง เขียนใหม่อยู่

https://github.com/mongkonP/Extreme-Karaoke-mng

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2022-02-11 15:54:30 By : lamaka.tor
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : C# เอาโค๊ดค้นหาเพลงซ้ำใน extreme karaoke มาให้ช่วยแก้ครับเหมือนมันยังช้าอยู่
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่