Browse Source

Diverses Corrections

Aryx 2 years ago
parent
commit
f3990dd3cf

+ 3 - 0
DetectEncoding.sln

@@ -4,6 +4,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00
 VisualStudioVersion = 12.0.40629.0
 MinimumVisualStudioVersion = 10.0.40219.1
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DetectEncoding", "DetectEncoding\DetectEncoding.csproj", "{82D05B7B-F006-4142-9E32-EBBB67D04875}"
+	ProjectSection(ProjectDependencies) = postProject
+		{E7DED023-F57F-4715-BC8D-752B60B6A203} = {E7DED023-F57F-4715-BC8D-752B60B6A203}
+	EndProjectSection
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextEncodingDetect", "E:\CSharp\Projects\Ext\text-encoding-detect\TextEncodingDetect-C#\TextEncodingDetect\TextEncodingDetect.csproj", "{9E3C3CE1-23DD-4A1B-B927-92D6BE3011A2}"
 EndProject

BIN
DetectEncoding.v12.suo


+ 2 - 2
DetectEncoding/DetectEncoding.csproj

@@ -32,8 +32,8 @@
     <WarningLevel>4</WarningLevel>
   </PropertyGroup>
   <ItemGroup>
-    <Reference Include="AryxDevLibrary, Version=1.0.1.658, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\packages\AryxDevLibrary.1.0.1.658\lib\net35-client\AryxDevLibrary.dll</HintPath>
+    <Reference Include="AryxDevLibrary, Version=1.0.1.659, Culture=neutral, processorArchitecture=MSIL">
+      <HintPath>..\packages\AryxDevLibrary.1.0.1.659\lib\net35-client\AryxDevLibrary.dll</HintPath>
       <Private>True</Private>
     </Reference>
     <Reference Include="System" />

+ 2 - 1
DetectEncoding/DetectEncoding.csproj.user

@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
-    <StartArguments>-e UNIX -f "E:\CSharp\Données accessoires\FileEncoding\UTF8-NOBOM.txt" -c ANSI</StartArguments>
+    <StartArguments>-f .\1111_insert_CPREG.sqlExt.sql -c UTF8_BOM -e DOS</StartArguments>
+    <EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
   </PropertyGroup>
 </Project>

+ 2 - 2
DetectEncoding/Properties/AssemblyInfo.cs

@@ -5,11 +5,11 @@ using System.Runtime.InteropServices;
 // Les informations générales relatives à un assembly dépendent de 
 // l'ensemble d'attributs suivant. Changez les valeurs de ces attributs pour modifier les informations
 // associées à un assembly.
-[assembly: AssemblyTitle("DetectEncoding")]
+[assembly: AssemblyTitle("EncodingDetector")]
 [assembly: AssemblyDescription("")]
 [assembly: AssemblyConfiguration("")]
 [assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("DetectEncoding")]
+[assembly: AssemblyProduct("EncodingDetector")]
 [assembly: AssemblyCopyright("Copyright ©  2018")]
 [assembly: AssemblyTrademark("")]
 [assembly: AssemblyCulture("")]

+ 21 - 18
DetectEncoding/business/parsing/ProgramParser.cs

@@ -26,7 +26,7 @@ namespace DetectEncoding.business.parsing
         {
             ShortOpt = "c",
             LongOpt = "convert-to",
-            Description = "Convertie l'encodage du fichier analysé dans un encodage cible : UTF8, UTF8_NOBOM, ANSI. La conversion en se fait que si l'encodage source a été détecté.",
+            Description = String.Format("Convertie l'encodage du fichier analysé dans un encodage cible : {0}. La conversion n'est possible que si l'encodage source a été détecté.", EnumAppEncoding.LibelleJoined()),
             HasArgs = true,
             IsMandatory = false,
             Name = "TargetEnc"
@@ -36,7 +36,7 @@ namespace DetectEncoding.business.parsing
         {
             ShortOpt = "e",
             LongOpt = "end-of-line-to",
-            Description = "Convertie le caractère de fin de ligne : DOS, UNIX. La conversion en se fait que si l'encodage source a été détecté.",
+            Description = "Convertie le caractère de fin de ligne : DOS, UNIX. La conversion n'est possible que si l'encodage source a été détecté.",
             HasArgs = true,
             IsMandatory = false,
             Name = "TargetEol"
@@ -103,25 +103,28 @@ namespace DetectEncoding.business.parsing
             if (HasOption(_optionTargetEnc.Name, arg))
             {
                 string encodingInput = GetSingleOptionValue(_optionTargetEnc.Name, arg).ToUpper();
-                if ("UTF8".Equals(encodingInput) || "UTF-8".Equals(encodingInput) || "UTF8BOM".Equals(encodingInput) || EnumAppEncoding.UTF8_BOM.Libelle.Equals(encodingInput))
-                {
-                    p.OutputEncoding = EnumAppEncoding.UTF8_BOM;
-                }
-                if ("UTF8NOBOM".Equals(encodingInput) | "UTF-8-NOBOM".Equals(encodingInput) || EnumAppEncoding.UTF8_NOBOM.Libelle.Equals(encodingInput))
-                {
-                    p.OutputEncoding = EnumAppEncoding.UTF8_NOBOM;
-                }
-                else if ("ANSI".Equals(encodingInput) || EnumAppEncoding.ANSI.Libelle.Equals(encodingInput))
-                {
-                    p.OutputEncoding = EnumAppEncoding.ANSI;
-                }
-                else if (EnumAppEncoding.UTF16BE_BOM.Libelle.Equals(encodingInput))
+
+                EnumAppEncoding enEncIn = EnumAppEncoding.GetFromLibelle(encodingInput);
+                if (enEncIn != null)
                 {
-                    p.OutputEncoding = EnumAppEncoding.UTF16BE_BOM;
+                    p.OutputEncoding = enEncIn;
                 }
-                else if (EnumAppEncoding.UTF16LE_BOM.Libelle.Equals(encodingInput))
+                else
                 {
-                    p.OutputEncoding = EnumAppEncoding.UTF16LE_BOM;
+
+                    if ("UTF8".Equals(encodingInput) || "UTF-8".Equals(encodingInput) || "UTF8BOM".Equals(encodingInput))
+                    {
+                        p.OutputEncoding = EnumAppEncoding.UTF8_BOM;
+                    }
+                    if ("UTF8NOBOM".Equals(encodingInput) | "UTF-8-NOBOM".Equals(encodingInput))
+                    {
+                        p.OutputEncoding = EnumAppEncoding.UTF8_NOBOM;
+                    }
+                    else if ("ANSI".Equals(encodingInput))
+                    {
+                        p.OutputEncoding = EnumAppEncoding.ANSI;
+                    }
+
                 }
             }
 

+ 21 - 0
DetectEncoding/constant/EnumAppEncoding.cs

@@ -2,6 +2,7 @@
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
+using AryxDevLibrary.utils;
 
 namespace DetectEncoding.constant
 {
@@ -52,5 +53,25 @@ namespace DetectEncoding.constant
 
         }
 
+        public static string LibelleJoined()
+        {
+            List<String> strRet = Values.Select(value => value.Libelle).ToList();
+
+            return String.Join(", ", strRet);
+        }
+
+        public static EnumAppEncoding GetFromLibelle(string encodingInput)
+        {
+            if (StringUtils.IsNullOrWhiteSpace(encodingInput))
+            {
+                return null;
+            }
+
+            foreach (var value in Values)
+            {
+                if (encodingInput.Equals(value.Libelle)) return value;
+            }
+            return null;
+        }
     }
 }