Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MySQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=21)
-   -   Problemas guardando path "\" (https://www.clubdelphi.com/foros/showthread.php?t=60122)

MaMu 21-09-2008 04:28:39

Problemas guardando path "\"
 
Tengo MySQL 5 (Delphi7 - Zeos)
Guardo un Path de una imagen, en un campo VARCHAR(255) "FOTO"
Por ejemplo: "C:\ARCHIVOS DE PROGRAMA\PEPITO\LALALA\FOTO.JPG"

sin problemas, pero cuando reviso el campo, me ha guardado esto:
"C:ARCHIVOS DE PROGRAMAPEPITOLALALAFOTO.JPG"

Como arreglo esto?, hay alguna forma de CAST para que me conserve el formato de ruta de directorios?

Saludos

dec 21-09-2008 05:32:18

Hola,

Duplicando la barra. Debes guardar algo como:

Código:

C:\\Archivos de programa\\Resto de\\La ruta\\
... si no me equivoco... :rolleyes:

MaMu 21-09-2008 08:37:14

Cita:

Empezado por dec (Mensaje 315373)
Hola,

Duplicando la barra. Debes guardar algo como:

Código:

C:\\Archivos de programa\\Resto de\\La ruta\\
... si no me equivoco... :rolleyes:

Mmm...
Se me ocurre una cosa asi:

Código Delphi [-]
function PathWindowsToMySQL(Path, PathWindows, PathMySql: String): String;
var  aPos: Integer;
begin
  aPos := Pos(PathWindows, Path);
   Result:= '';
   while (aPos <> 0) do 
     begin
       Result := Result + Copy(Path, 1, aPos-1) + PathMySql;
       Delete(Path, 1, aPos + Length(PathWindows)-1);
       aPos := Pos(PathWindows, Path);
     end;
     Result := Result+Path;
end;

Podria ser, no?

Y el llamado sería

Código Delphi [-]
Ruta:='C:\temporal\fotos\pepe.jpg';
MiRoot:=PathWindowsToMySQL(Ruta,'\','\\');

Saludos

dec 21-09-2008 17:04:51

Hola,

Yo esperaría por la sugerencia de algún otro compañero. Dudo mucho que Delphi no incorpore ya las funciones necesarias, o bien pueda hacerse de otra forma, incluso con alguna función del propio MySQL. En todo caso, no sé yo si para duplicar las "barras" no serviría algo como esto:

Código Delphi [-]
toSQL = StringReplace(filePath, '/', '//', [rfReplaceAll]);

O igual conviene algo más especializado, no sé... :rolleyes:

Besto 22-09-2008 10:19:59

A mí me pasó lo mismo y lo arregle como comenta el compañero Dec.


La franja horaria es GMT +2. Ahora son las 03:05:39.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi