Soyez le premier à donner votre avis sur cette source.
Vue 28 836 fois - Téléchargée 643 fois
CREATE FUNCTION [dbo].[fctTranslateWordsDOS] (@EXP VARCHAR (8000)) RETURNS VARCHAR (8000) AS -- Préfixe les huit caractères réservés de MS-DOS par l'accent circonflexe et -- supprime ou remplace les caractères de retour à la ligne par un espace. -- Exemples d'utilisation : -- 1. Mots réservés -- SELECT [dbo].[fctTranslateWordsDOS]('start ! " % & < > ^ | end') -- 2. Caractères de retour à la ligne -- SELECT [dbo].[fctTranslateWordsDOS](char(13) + char(10) + 'end') -- SELECT [dbo].[fctTranslateWordsDOS]('start' + char(13) + char(10) + 'end') -- SELECT [dbo].[fctTranslateWordsDOS]('start' + char(13) + char(10)) BEGIN DECLARE @WORD VARCHAR(1), @RETVAL VARCHAR(8000) IF (@EXP IS NULL) RETURN NULL SET @RETVAL='' WHILE LEN(@EXP)>0 BEGIN SET @WORD= SUBSTRING(@EXP,1, 1) -- Préfixe les mots réservés IF ((@WORD='!') OR (@WORD='"') OR (@WORD='%') OR (@WORD='&') OR (@WORD='<') OR (@WORD='>') OR (@WORD='^') OR (@WORD='|')) SET @RETVAL =@RETVAL + '^' + SUBSTRING(@EXP, 1, 1) -- Remplacement conditionnel avec gestion des bornes ELSE IF @WORD=CHAR(13) AND ISNULL(RIGHT(@RETVAL, 1), ' ')<>' ' AND @EXP<>CHAR(10) SET @RETVAL = @RETVAL + ' ' -- Suppression des caractères de retour à la ligne ELSE IF ASCII(@WORD)<>13 AND ASCII(@WORD)<>10 SET @RETVAL =@RETVAL + SUBSTRING(@EXP, 1, 1) SET @EXP= SUBSTRING(@EXP, 2, LEN(@EXP)-1) END -- END WHILE RETURN @RETVAL END -- END FCT GO CREATE PROCEDURE [dbo].[SPR_SHELL_EDIT] (@FullPath VARCHAR(260), @DelimitedText VARCHAR(7730), @isCleaned BIT) AS /* Edition d'un fichier plat (CSV) à partir d'une commande DOS ----------------- -- Exemples d'utilisation : -- Edition sans suppression du contenu DECLARE @Emplacement VARCHAR (260) -- Emplacement du type \\serveur\partage\chemin\nom_fichier SET @Emplacement= '<chemin d'accès à saisir>\Test.csv' EXEC SPR_SHELL_EDIT @Emplacement, 'bijou;caillou;chou;genou;hibou;joujou;pou', 0 -- Edition avec suppression du contenu EXEC SPR_SHELL_EDIT @Emplacement, 'bijou;caillou;chou;genou;hibou;joujou;pou', 1 ------------------------------------------------------------------------------ */ BEGIN DECLARE @Cmd VARCHAR(8000); IF @isCleaned=1 -- Supprimer le contenu existant puis ajouter la ligne de texte SET @Cmd = 'Echo ' + [dbo].[fctTranslateWordsDOS](@DelimitedText) + ' > ' + @FullPath; ELSE -- Ajouter la ligne de texte sans supprimer le contenu existant SET @Cmd = 'Echo ' + [dbo].[fctTranslateWordsDOS](@DelimitedText) + ' >> ' + @FullPath; EXEC xp_cmdshell @Cmd, NO_OUTPUT; END
http://www.emicsoft.com/video-converter-for-mac.html
http://www.emicsoft.com/avi-converter-for-mac.html
http://www.emicsoft.com/flv-converter-for-mac.html
Les férus de programmation trouveront les tables de conversion sur le site VB France à cette adresse :
http://www.vbfrance.com/codes/CONVERTION-TABLE-CARACTERES-EBCDIC-ASCII-OEM-ANSI_4998.aspx
Sub DecodeOEM()
Dim sNames() As String, i As Integer
'Emplacement du répertoire à traiter
ChangeFileOpenDirectory "\\srvinfo\Test"
'Liste CSV des fichiers du réperoire spécifié
sNames = Split("test.csv;test.txt", ";")
For i = LBound(sNames) To UBound(sNames)
Documents.Open FileName:=sNames(i), Encoding:=850
With ActiveDocument
.SaveAs FileName:=sNames(i), Encoding:=1252
.Close
End With
Next i
End Sub
Sub DecodeOEM()
Dim sNames() As String, i As Integer
'Emplacement du répertoire à traiter
ChangeFileOpenDirectory "D:\Test"
'Liste CSV des fichiers du réperoire spécifié
sNames = Split("test.csv;test.txt", ";")
For i = LBound(sNames) To UBound(sNames)
Documents.Open FileName:=sNames(i), ConfirmConversions:=False, ReadOnly:=False, _
AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
Revert:=False, WritePasswordDocument:="", WritePasswordTemplate:="", _
Format:=wdOpenFormatAuto, XMLTransform:="", Encoding:=850
With ActiveDocument
.SaveAs FileName:=sNames(i), FileFormat:=wdFormatText, _
LockComments:=False, Password:="", AddToRecentFiles:=True, WritePassword:="", _
ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, SaveNativePictureFormat:=False, _
SaveFormsData:=False, SaveAsAOCELetter:=False, Encoding:=1252, InsertLineBreaks:=False, _
AllowSubstitutions:=False, LineEnding:=wdCRLF
.Close
End With
Next i
End Sub
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.