//�ΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡ��ļ��������� void m_obFileMixer_Click(object sender, EventArgs e) { string schemeFile = m_stSchemeFileName; string fileName = checkMix(schemeFile); if (fileName != null) { MixerListWriter m_obMixerWriter = mixRequest(fileName, schemeFile); if (m_obMixerWriter != null) { string tempFile = m_obMixText + "\\" + m_stSchemeFolderName; string tempScheme = m_obSchemeText + "\\" + m_stSchemeFolderName; MixerSchemeDescribe tempWriter = new MixerSchemeDescribe(tempFile, tempScheme); int fileCount = mixFile(m_obResourceText.Text, "", tempWriter, tempWriter.excludeList, m_obMixerWriter); int deleteCount = m_obMixerWriter.checkMiss(m_obResourceText.Text, m_obMixText.Text, true); ErrorBox.Show(fileCount.ToString() + " files created \r\n" + deleteCount.ToString() + " files deleted", "ClassMixer"); } } }
//�ΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡ��ļ��������� private int mixFile(string folderName, string prefix, MixerSchemeDescribe tempWriter, ArrayList exClude, MixerListWriter m_obMixerWriter) { DirectoryInfo folder = new DirectoryInfo(folderName); FileInfo[] fileList = folder.GetFiles(); int fileCount = 0; for (int i = 0; i < fileList.Length; i++) { string sourceFile = fileList[i].Name; string targetFolderName = tempWriter.getMixedName(prefix); if (targetFolderName != null) { string targetFolder = m_obMixText.Text + "\\" + targetFolderName; if (Directory.Exists(targetFolder)) { if (sourceFile != "ģ��.as") { string info = "from :" + folderName + "\\" + sourceFile + "\r\n to : " + targetFolder; if (MessageBox.Show(info, "ȷ������?", MessageBoxButtons.OKCancel) == DialogResult.OK) { string prefixTemp = ""; if (prefix != "") { prefixTemp = prefix + "."; } string[] nameSeg = sourceFile.Split(new string[] { "." }, StringSplitOptions.RemoveEmptyEntries); string mixedName = m_obMixerWriter.write(prefixTemp + nameSeg[0] as string, targetFolderName); if (mixedName != null) { string targetFile = targetFolder + "\\" + mixedName + ".as"; File.Copy(folderName + "\\" + sourceFile, targetFile); fileCount++; } } //�ΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡο���ȷ�� } else { ErrorBox.Show("find tempfile ! ", "ClassMixer"); } //�ΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡ�ģ���ų� } } //�ΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡ�Ŀ¼ȷ�� } //�ΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡ��Ӽ��������� if (prefix != "") { prefix += "."; } DirectoryInfo[] folderList = folder.GetDirectories(); for (int i = 0; i < folderList.Length; i++) { string subFolder = folderList[i].Name; int index = exClude.IndexOf(subFolder); if (index < 0) { fileCount += mixFile(folderName + "\\" + subFolder, prefix + subFolder, tempWriter, new ArrayList(), m_obMixerWriter); } else if (index > -1) { ErrorBox.Show("findedExclude Item : " + subFolder, "ClassMixer"); } } m_obMixerWriter.save(); return fileCount; }