Jump to content
a3deluxe

NumericUpDown para copiar ficheiros

Recommended Posts

a3deluxe

Boas,

Queria utilizar o NumericUpDown para copiar ficheiros,

tenho varios ficheiros numerados, queria utilizar o NumericUpDown para copiar esses ficheiros,

alguma sugestão como posso fazer?

Share this post


Link to post
Share on other sites
cdaniel.marques

Escolher um número no NumericUpDown, carregar num botão, e copiar número do ficheiro escolhido no NumericUpDown?

Share this post


Link to post
Share on other sites
cdaniel.marques

Código do botão "Copiar":

Dim FicheiroParaCopiar  As String
Dim FicheiroNovo As String

FicheiroParaCopiar = "C:\Users\Utilizador\Documentos\" & NumericUpDown1.Value & ".txt"
FicheiroNovo = "C:\Users\Utilizador\Documentos\FicheirosCopiados\"  & NumericUpDown1.Value & ".txt"

If System.IO.File.Exists( FicheiroParaCopiar ) = True Then
      System.IO.File.Copy( FicheiroParaCopiar, FicheiroNovo )
      MsgBox("Ficheiro Copiado com Sucesso!")
End If

Por exemplo, para um ficheiro de texto.

Edited by cdaniel.marques

Share this post


Link to post
Share on other sites
a3deluxe

Tentei colocar assim no botao e não funcionou:

//	

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
    Dim FileToCopy As String
	Dim NewCopy As String

	FileToCopy = "d:\Bin\1\" & NumericUpDown1.Value & ".cod"
	NewCopy = "d:\" & NumericUpDown1.Value & ".cod"

	If System.IO.File.Exists(FileToCopy) = True Then

		System.IO.File.Copy(FileToCopy, NewCopy)
		MsgBox("File Copied")

	End If
End Sub	  

queria que cada numero da NumericUpDown1 corresponde-se a uma pasta com um ficheiro

com a extensao .cod

como mostra o meu código.

sao 100 pastas, qual é a melhor maneira de fazer,para atribuir cada pasta a um numero daNumericUpDown ?

Share this post


Link to post
Share on other sites
cdaniel.marques
FileToCopy = "d:\Bin\" & NumericUpDown1.Value  & "\" & NumericUpDown1.Value & ".cod" 'Exemplo: d:\Bin\1\1.cod
NewCopy = "d:\"& NumericUpDown1.Value & "\" & NumericUpDown1.Value & ".cod"		  'Exemplo: d:\1\1.cod
Dim NewFileFolder as String = "d:\"& NumericUpDown1.Value

'Verifica se existe o número da pasta para onde vais copiar o novo ficheiro, cria se não existir
If(Not System.IO.Directory.Exists(NewFileFolder)) Then
      System.IO.Directory.CreateDirectory(NewFileFolder)

If System.IO.File.Exists(FileToCopy) = True Then
   System.IO.File.Copy(FileToCopy, NewCopy)
   MsgBox("File Copied")
End If

Edited by cdaniel.marques

Share this post


Link to post
Share on other sites
a3deluxe

boas,

Ele não me esta a copiar o fecheiro.

só esta a criar a pasta de destino.

Share this post


Link to post
Share on other sites
cdaniel.marques

Faltava um End If. Tenta assim:

    Dim FileToCopy As String
    Dim NewCopy As String
    FileToCopy = "d:\Bin\" & NumericUpDown1.Value & "\" & NumericUpDown1.Value & ".cod" 'Exemplo: d:\Bin\1\1.cod
    NewCopy = "d:\" & NumericUpDown1.Value & "\" & NumericUpDown1.Value & ".cod"			   'Exemplo: d:\1\1.cod
    Dim NewFileFolder As String = "d:\" & NumericUpDown1.Value
    'Verifica se existe o número da pasta para onde vais copiar o novo ficheiro, cria se não existir
    If (Not System.IO.Directory.Exists(NewFileFolder)) Then
	    System.IO.Directory.CreateDirectory(NewFileFolder)
    End If
    If System.IO.File.Exists(FileToCopy) = True Then
	    System.IO.File.Copy(FileToCopy, NewCopy)
	    MsgBox("File Copied")
    End If

Share this post


Link to post
Share on other sites
a3deluxe

Boas,

Ainda não resolvi o problema, ele não esta a copiar o ficheiro.cod

só esta criar a pasta de destino.

tambem não queria que ele cria-se nunhuma pasta de destino, copia-se só o ficheiro para o destino.

Share this post


Link to post
Share on other sites
Tiago Simões Marques

Boas,

Tens a certeza que o ficheiro decrito no campo 'FiletoCopy', está com o caminho correcto?

Cumprimentos,


Tiago Simões Marques

Share this post


Link to post
Share on other sites
a3deluxe

//	  FileToCopy = "d:\Bin\" & NumericUpDown1.Value & "\" & NumericUpDown1.Value & ".cod"	 

sim esta , não preciso colocar o nome do ficheiro?

ja tentei com o nome do ficheiro e tambem não copia.

Share this post


Link to post
Share on other sites
Tiago Simões Marques

Aparece-te esta msgbox?

MsgBox("File Copied")


Tiago Simões Marques

Share this post


Link to post
Share on other sites
cdaniel.marques

Quando dizes, não está a copiar o ficheiro.cod, como se chama o ficheiro, não será 1.cod, 2.cod, 3.cod, conforme o número selecionado na Numeric Up Down?

Talvez seja + fácil mostrares o código que tens no momento.

Share this post


Link to post
Share on other sites
a3deluxe

Não aparece a MsgBox.

o código que tenho é este:

//  

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
	Dim FileToCopy As String
	Dim NewCopy As String
	FileToCopy = "D:\Bin\1\file.cod" & NumericUpDown1.Value & "\" & NumericUpDown1.Value & ".cod" 'Exemplo: d:\Bin\1\1.cod
	NewCopy = "d:\" & NumericUpDown1.Value & "\" & NumericUpDown1.Value & ".cod"						   'Exemplo: d:\1\1.cod
	Dim NewFileFolder As String = "d:\" & NumericUpDown1.Value
			If System.IO.File.Exists(FileToCopy) = True Then
		System.IO.File.Copy(FileToCopy, NewCopy)
		MsgBox("File Copied")
	End If
End Sub

Share this post


Link to post
Share on other sites
Tiago Simões Marques

Vai a esta pasta: D:\Bin\1\ e vê se tens lá o ficheiro: "1.Cod" por exemplo.


Tiago Simões Marques

Share this post


Link to post
Share on other sites
a3deluxe

na pasta D:\Bin\1\ tenho lá um ficheiro chamado file.cod

e este ficheiro que quero cópiar para o d:\

existem varias pastas 1, 2 , 3 ,4.... em todas elas o ficheiro existente o ficheiro file.cod

que quero cópiar para o d:\

Share this post


Link to post
Share on other sites
Tiago Simões Marques

Se tu colocares o seguinte código antes do ultimo o que te dá?

MsgBox(FileToCopy)


Tiago Simões Marques

Share this post


Link to post
Share on other sites
cdaniel.marques

FileToCopy = "d:\Bin\" & NumericUpDown1.Value  & "\" & NumericUpDown1.Value & ".cod" [b]'Exemplo: d:\Bin\1\1.cod[/b]
NewCopy = "d:\"& NumericUpDown1.Value & "\" & NumericUpDown1.Value & ".cod"		  '[b]Exemplo: d:\1\1.cod[/b]

na pasta D:\Bin\1\ tenho lá um ficheiro chamado file.cod

e este ficheiro que quero cópiar para o d:\

existem varias pastas 1, 2 , 3 ,4.... em todas elas o ficheiro existente o ficheiro file.cod

que quero cópiar para o d:\

Então precisas de adaptar o código.

Onde está:

FileToCopy = "d:\Bin\" & NumericUpDown1.Value & "\" & NumericUpDown1.Value & ".cod"

Substituis para:

FileToCopy = "d:\Bin\" & NumericUpDown1.Value & "\file.cod"

E em:

NewCopy = "d:\" & NumericUpDown1.Value & "\" & NumericUpDown1.Value & ".cod"

Mudas para:

NewCopy = "d:\" & NumericUpDown1.Value & "\file.cod"

Edited by cdaniel.marques

Share this post


Link to post
Share on other sites
a3deluxe

Coloquei assim e tambem não funcionou.

//	 Dim FileToCopy As String
	Dim NewCopy As String
	FileToCopy = "D:\Bin\1\file.cod" & NumericUpDown1.Value & "\" & NumericUpDown1.Value & "file.cod"
	NewCopy = "d:\" & NumericUpDown1.Value & "\" & NumericUpDown1.Value & "file.cod"						  
	Dim NewFileFolder As String = "d:\" & NumericUpDown1.Value
	If System.IO.File.Exists(FileToCopy) = True Then
		System.IO.File.Copy(FileToCopy, NewCopy)
		MsgBox("File Copied")
	End If

nem apareceu a Msgbox,

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.