FoxPro/Visual FoxPro - Como obtener nombres en mayusculas usando RENAME

 
Vista:
sin imagen de perfil

Como obtener nombres en mayusculas usando RENAME

Publicado por Jorge Cromer (31 intervenciones) el 01/10/2016 08:23:46
Buenos dias, al usar el comando RENAME de Visual Foxpro me cambia de mayusculas a minusculas, ejm. RENAME REG2525.txt TO BASE 2525.txt me sale:
base2525.txt. Como puedo lograr que salga BASE2525.txt es decir que respete las mayusculas. Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Como obtener nombres en mayusculas usando RENAME

Publicado por Fidel José (657 intervenciones) el 01/10/2016 16:39:49
Utiliza ScriptingFileSystemObject
En este ejemplo se transforma el nombre de archivo en Upper()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
TRY
	LOCAL loFso as Object,;
		loex as Exception
	loFso = NEWOBJECT("Scripting.FileSystemObject")
	lcFile = GETFILE()
	IF !EMPTY(lcFile)
		loFso.MoveFile(lcFile,UPPER(lcFile))
	ENDIF
CATCH TO loex
	loex.UserValue = PROGRAM()
	* ShowError(loex) (rutina que muestra el error)
FINALLY
	loFso = null
ENDTRY
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Como obtener nombres en mayusculas usando RENAME

Publicado por Jorge Cromer (31 intervenciones) el 01/10/2016 21:33:28
Gracias Fidel Jose por tu valioso aporte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Jorge Enrique Arango Sotelo
Val: 4
Ha aumentado su posición en 9 puestos en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Como obtener nombres en mayusculas usando RENAME

Publicado por Jorge Enrique Arango Sotelo (3 intervenciones) el 03/09/2018 01:20:11
Buenas tardes, saludes desde Bogotá,

Aunque esta pregunta fue formulada hace ya mucho tiempo; espero que alguien pueda darle continuidad a la misma con base en la siguiente observación: El código anterior cambia el nombre del archivo a mayúsculas; sin embargo, en mi aplicación he tenido la necesidad de recortar el nombre a un archivo y grabarlo nuevamente, pero requiero que se conserve la originalidad del mismo de la siguiente manera:


Nombre original: "Archivo Original (2018_09_02 18_15_30 UTC).xlsx"

Nuevo nombre al renombrar: "Archivo Original.xlsx"


Es de anotar que son cientos de archivos a los que necesito hacerles ese cambio; todo el código lo tengo listo y prácticamente mi línea final es la siguiente:

rename alltrim(nom_archivo) to alltrim(nom_corto)

nom_archivo contiene la cadena "Archivo Original (2018_09_02 18_15_30 UTC).xlsx"
nom_corto contiene la cadena "Archivo Original.xlsx"

Gracias por la colaboración que puedan brindarme

Jorge
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Como obtener nombres en mayusculas usando RENAME

Publicado por Fidel José (657 intervenciones) el 03/09/2018 17:02:00
Con Scripting.fileSystemObject lo puedes hacer. Tienes que agregarle el path de los archivos (addbs(path)+nom_
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
TRY
 
	LOCAL loFso as Object,;
 
		loex as Exception
 
	loFso = NEWOBJECT("Scripting.FileSystemObject")
       IF loFso.Exists(nom_archivo)
 
		loFso.MoveFile(nom_archivo,nom_corto)
 
	ENDIF
 
CATCH TO loex
 
	loex.UserValue = PROGRAM()
 
	* ShowError(loex) (rutina que muestra el error)
 
FINALLY
 
	loFso = null
 
ENDTRY
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Jorge Enrique Arango Sotelo
Val: 4
Ha aumentado su posición en 9 puestos en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Como obtener nombres en mayusculas usando RENAME

Publicado por Jorge Enrique Arango Sotelo (3 intervenciones) el 03/09/2018 17:20:04
Mi estimado Fidel,

Muchas gracias por tu respuesta a mi pregunta, la cual funcionó muy bien. Como complemento a lo anterior, quiero ver si puedes ayudarme con lo siguiente y que está relacionado con la pregunta anterior:

Estoy realizando un algoritmo para cambiar de manera automática los nombres de los archivos dentro de una carpeta nom_archivo a nom_corto. Para saber cuáles son los archivos que están dentro de la carpeta uso la función ADIR(); pero resulta que esta automáticamente cambia los nombres originales a mayúsculas y necesito que se conserven sin alteración. He pensado en crear una tabla sencilla donde pueda almacenar el nombre y luego procesar esos datos para terminar con el código que tan amablemente me compartiste anteriormente; pero reconozco que en este momento no recuerdo cómo pueda hacer esa lectura de los nombres originales de cada archivo. ¿Podrías ayudarme con esta consulta?. De antemano te agradezco tu desinteresado apoyo.

Cordial saludo,

Jorge Arango
Bogotá-Colombia
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar