Código VB para Delphi

09/06/2005

0

Aeh Galera, Tudo em cima?

Seguinte, tô precisando passar esse código VB pra delphi 2005 ASP.NET e não tô conseguindo algumas partes :( :
Function AbreArquivo(sArquivo As String) As String
  Dim iARQ As Integer
  Dim sLinha As String
  Dim sResult As String

  iARQ = FreeFile
  Open sArquivo For Input As iARQ
  Do While Not EOF(iARQ)
    *Pega o conteúdo da linha
    Line Input #iARQ, sLinha

    *Quebra a linha e concatena (soma) o resultado
    sResult = sResult + Chr(13) & Chr(10) + sLinha
  Loop

  AbreArquivo = sResult

Fecha o arquivo
  Close iARQ
End Function


Se alguém souber como faz e puder me ajudar serei grato. :lol:

Até mais.

mjr.


Responder

Posts

09/06/2005

Mjr

Na Verdade,

estou querendo só abrir um arquivo texto em um TextBox no D2005, se alguém souber de um jeito mais fácil e puder me passar serei grato. :D

mjr


Responder

09/06/2005

Sanses

Olá

Faz o seguinte: Declare System.IO no uses do seu webform e coloque estas linhas no load da página:

var
  arq : FileStream;
  ler : StreamReader;
begin
  Arq := FileStream.Create(´C:\www\aspnet\web\arquivo.txt´, FileMode.OpenOrCreate, FileAccess.Read);
  try
   ler := StreamReader.create(arq);
    try
     ler.BaseStream.Seek(0, SeekOrigin.&Begin);
     while ler.Peek <> -1 do
      listbox1.Items.add(ler.ReadLine);
    finally
     ler.Close;
    end;
  finally
   arq.Close;
  end; 
end;


Atente para que o arquivo texto exista no diretório.

É bem simples, quase não muda muito do win32

Sanses[/code]


Responder

09/06/2005

Mjr

Sanses,

:D Muito Obrigado, o código funcionou exatamente como eu queria, porém qual o path que tenho que colocar quando for publicar a pagina, por exemplo: localmente utilizo ´e:\db\pagina\desc\´+ arquivo. quando publicar é só: ´\desc\´+ arquivo?

Ah, e a função que você passou não retorna caracteres acentuados ou o cedilha, tenho que tirá-los do texto ou tem uma maneira de retornar caracteres acentuados? :lol:

Desde já agradeço.

mjr.


Responder

09/06/2005

Sanses

olá

Para o path use MapPatch.

Para os caracteres especiais eu não havia reparado, vou dr uma olhada e ver o que pode ser feito.

Sanses


Responder

06/07/2005

Sanses

Olá

Para carregar também os caracteres acentuados faça assim:
var
  ler : StreamReader;
Begin
  try
   ler := StreamReader.create(´C:\inetpub\wwwroot\www\aspnet\web\arquivo.txt´, UTF7Encoding.get_UTF7);
    try
     ler.BaseStream.Seek(0, SeekOrigin.&Begin);
     while ler.Peek <> -1 do
      listbox1.Items.add(ler.ReadLine);
    finally
     ler.Close;
    end;
  finally
   arq.Close;
  end;


Assim vai aparecer a acentuação e os ´cedilhas´ corretamente.

[]´s
Sanses


Responder

13/07/2005

Mjr

Olá Sanses,

Grato pelo código.

O D2005 não tá aceitando esse UTF7Encoding, sabes me dizer o porque?

grato

mjr.


Responder

13/07/2005

Sanses

Olá

Para que o codigo compile, inclua no uses o namespace System.Text.

[]´s
Sanses


Responder

20/07/2005

Mjr

Sanses,

É o seguinte, criei uma variável string e ao invés de colocar listbox1.items.add(ler.ReadLine), coloquei texto := texto + (ler.ReadLine).
Teoricamente teria que funcionar, mas não aparece nada.

O problema é que quero o texto num textbox.

Você sabe me informar o porque de não estar aparecendo o texto?

grato.

mjr.


Responder

20/07/2005

Sanses

Fiz assim e deu certo:

var
  arq : FileStream;
  ler : StreamReader;
  texto : string;
begin
  Arq := FileStream.Create(´C:\inetpub\wwwroot\www\aspnet\web\arquivo.txt´, FileMode.OpenOrCreate, FileAccess.Read);
  try
   ler := StreamReader.create(´C:\inetpub\wwwroot\www\aspnet\web\arquivo.txt´, UTF7Encoding.get_UTF7);
    try
     ler.BaseStream.Seek(0, SeekOrigin.&Begin);
     while ler.Peek <> -1 do
      //listbox1.Items.add(ler.ReadLine);
      texto := texto + (ler.readLine);
    finally
     ler.Close;
    end;
  finally
   arq.Close;
   textbox1.Text := texto;
  end;


isso está no onload da página

[]´s
Sanses


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar