Code : Tout sélectionner
#include <Constants.au3>
$CHEMIN = "C:"
$FIL_OR_FOLD = "1 op 2.txt"
MsgBox(0, $FIL_OR_FOLD, _Conv_Carct_Dos($FIL_OR_FOLD, $CHEMIN))
Func _Conv_Carct_Dos($FIL_OR_FOLD, $CHEMIN)
Local $iCMD1, $iV1, $iV2, $iV3 = "", $iV4, $iV5, $iV6, $iV7, $iV8, $iV9
If StringRight($CHEMIN, 1) <> "\" Then $CHEMIN = $CHEMIN&"\"
$iV1 = StringSplit($FIL_OR_FOLD, " ", 1)
If $iV1[0] <= 1 Then Return $FIL_OR_FOLD
If Not FileExists($CHEMIN&$FIL_OR_FOLD) Then Return 0
$iCMD1 = Run(@ComSpec&' /c dir /X "'&$CHEMIN&'"', $CHEMIN, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
While 1
$iV2 = StdoutRead($iCMD1)
If @error Then ExitLoop
If $iV2 <> "" Then $iV3&= $iV2
Wend
$iV4 = StringSplit($iV3, @CRLF, 1)
For $iV5 = 1 To $iV4[0]
$iV6 = StringSplit($iV4[$iV5], $FIL_OR_FOLD, 1)
If $iV6[0] > 1 Then
$iV7 = StringLen($iV6[1])
$iV9 = $iV7
For $iV8 = 1 To $iV7
If StringRight(StringLeft($iV6[1], $iV9), 1) <> " " Then
$iV6 = StringLeft($iV6[1], $iV9)
$iV7 = StringLen($iV6)
$iV9 = $iV7
For $iV8 = 1 To $iV7
If StringRight(StringLeft($iV6, $iV9), 1) = " " Then
Return StringReplace(StringReplace($iV6, StringLeft($iV6, $iV9), ""), " ", "")
EndIf
$iV9 = $iV9-1
Next
EndIf
$iV9 = $iV9-1
Next
EndIf
Next
EndFunc