Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   .NET (https://www.clubdelphi.com/foros/forumdisplay.php?f=17)
-   -   foreach (https://www.clubdelphi.com/foros/showthread.php?t=36785)

altp 24-10-2006 13:44:51

foreach
 
Buenas a todos.

Trabajo con Delphi 2006, asp.NET.
Mi problema es que no soy capaz de traducir la siguiente instrucción:

Código:

foreach(string s in Directory.GetFiles(Server.MapPath(""), "*.jpg"))
Si me pudieran ayudar, y decirme como se pone en Delphi se lo agradecería.

Gracias de antemano.

dec 24-10-2006 14:33:09

Hola,

Estás mostrando código fuente de C#, ¿tú te refieres a cómo puedes utilizar la sintaxis de Delphi para conseguir lo mismo no es así? Pues... no hay mucha diferencia... a partir de Delphi 2005 (creo, no estoy muy seguro) existe la instrucción "foreach" y su uso es similar al de C#, en este caso.

No tengo Delphi ahora mismo a mano, y menos Delphi 2005 para asegurarme, pero, ¿qué tal algo así?

Código Delphi [-]
var
  s: string;
begin
  foreach s in Directory.GetFiles(Server.MapPath(''), '*.jpg') do
  begin
    // Estás dentro del "bucle foreach"...
  end;
end;

Es decir, se trata de declarar "fuera" la variable "s" y de utilizar comillas simples en lugar de las "dobles"... algo así tiene que ser,... si no estoy completamente equivocado, vaya. ;)

mamcx 24-10-2006 15:57:34

Mas exactamente
Código Delphi [-]
for s in Directory.GetFiles(Server.MapPath(''), '*.jpg') do
begin
end;

La gente de Borland decidio no agregar una nueva palabra clave y mas bien reusar la que habia... a mi me parece mas claro asi, cosa que tenia acostumbrado de python...

dec 24-10-2006 16:54:36

Hola,

Toma... pues yo pensaba que sí que había agregado el "foreach", pero, efectivamente, ahora que lo dices... puede que me equivoque de cabo a rabo. ;)

altp 24-10-2006 17:17:01

Gracias a los dos por responder.

La solución es como decía Mamcx, pero yo tenía un error, tenía declarado Directory como DirectoryInfo y por eso me daba error.

Gracias de nuevo.


La franja horaria es GMT +2. Ahora son las 13:05:10.

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