Community discussion forum
How to create Subdiretcory on the FTP server?
-
i want to create subdirectory on the server.But unable to create there.
----------------------------------------------------------------------------------------------------------------------------------------------------
Shared Sub main2(ByVal zipdir, ByVal systemname)
'FTP creadentials'
Dim servertemp As String = "ftp://hydhtc25116"
Dim username As String = "hydhtc25116\root"
Dim password As String = "infy@123"
Dim host As String = servertemp
'Renaming the zip file as the current system date'
Dim filename As String
filename = zipdir
Dim New1 As String
Dim month1 As String
Dim year1 As String
Dim day1 As String
day1 = DatePart("d", DateTime.Now)
month1 = DatePart("m", DateTime.Now)
year1 = DatePart("yyyy", DateTime.Now)
New1 = systemname + "_" + day1 + "-" + month1 + "-" + year1
'Declaring the FTP zip filename as the current system Date'
Dim remoteFile As String = "/" & New1 & ".zip"
'1. Create a request: must be in ftp://hostname format'
Dim URI As String = host & remoteFile
Dim ftp As Net.FtpWebRequest = CType(Net.FtpWebRequest.Create(URI), Net.FtpWebRequest)
'2. Set credentials
ftp.Credentials = New System.Net.NetworkCredential(username, password)
'3. Settings and action
ftp.KeepAlive = False
'4. we want a binary transfer, not textual data
ftp.UseBinary = True
'5. Define the action required (in this case, download a file)
ftp.Method = System.Net.WebRequestMethods.Ftp.UploadFile
'6. Reading the content of the zip file'
Dim bFile() As Byte = System.IO.File.ReadAllBytes(filename & "/" & New1 & ".zip")
Dim clsStream As System.IO.Stream = ftp.GetRequestStream()
'Writing the content of the file'
clsStream.Write(bFile, 0, bFile.Length)
clsStream.Close()
clsStream.Dispose()
clsStream.Flush()
End Sub---------------------------------------------------------------------------------------------------------------------------------------------
here is the logic of directory which i want to create on the server..
------------------------------------------------------------------------------------------------------------------------------------------------
Dim str As String = "C:\ProgramFiles\Ext\ABC\Stv\text.txt"
Dim newstr As String = str.Substring(0, 1)
Console.WriteLine(newstr)
Dim new1 As String = str.Substring(3, str.LastIndexOf("\") - 2)
Console.WriteLine(new1)
If Not Directory.Exists("C:\C\" & new1) Then
Directory.CreateDirectory("C:\C\" & new1)
End If
----------------------------------------------------------------------------------------------------plz help me out..
-
Advertisement
Simply the fastest line-level profiler for .NET ever
“The low overhead means it has minimal impact on the execution of my program”
Mark Everest, Development Team Leader, Renault F1 Team Ltd.Try out the new ANTS Profiler 4 for yourself. Download your 14-day trial now
-
Great thanks for inspiration. I am going to make some really new conception of ftp (designed for programmers) now. I was angry with some vices in SmartFTP, and also it is stopped as freeware now, so I just don't want to mess up with old version of it around and around.
Here I created something that could help. Anyway I am continuing to create this "Ftp" Class to some easy to use and performance maximale class, which will be then places in cConnection in support. Here is solvation of ur problem and some stuff around in work state.
Class FTP
Region "Enums"
Public Enum FtpTransferType As Integer Binary = -1 ASCII = 0 End Enum Public Enum FtpPORTsender As Integer Server = -1 Client = 0 End Enum Public Enum FtpConnectionType Active = -1 Passive = 0 End Enum
End Region
Private Credentials As System.Net.NetworkCredential Public BUF_SIZE% Public Host$ Public TransferType As FTP.FtpTransferType Public SSL As Boolean Private UsePassive As Boolean Public Property Mode() As FTP.FtpConnectionType Get Return CInt(Not Me.UsePassive) End Get Set(ByVal value As FTP.FtpConnectionType) Me.UsePassive = Not CBool(value) End Set End Property ''' Synonym to mode Public Property PortSender() As FTP.FtpPORTsender Get Return CInt(Me.UsePassive) End Get Set(ByVal value As FTP.FtpPORTsender) Me.UsePassive = CBool(value) End Set End Property
Shared Function RemoveEndSlash$(ByVal text$) If text.EndsWith("\") Or text.EndsWith("/") Then Return Strings.Left(text, text.Length - 1) Else Return text End If End Function Public Function GetUri(ByVal directory$, ByVal file$) As System.Uri If Strings.Len(directory) = 0 Then Return New System.Uri(Me.Host & "/" & file) ElseIf Strings.Len(file) = Nothing Then Return New System.Uri(Me.Host & "/" & directory) Else Return New System.Uri(Me.Host & "/" & FTP.RemoveEndSlash(directory) & "/" & file) End If End Function Public Function GetLastName$(ByVal url As System.Uri) Dim path$ = url.AbsolutePath Dim ix% = Strings.InStrRev(path, "/") If ix = 0 Then Return path Else Return Strings.Right(path, path.Length - ix) End If End Function
Public Function SingleUpload(ByVal path$, ByVal optfile$, Optional ByVal targetFileName$ = Nothing) As System.Net.FtpWebResponse If targetFileName = Nothing Then targetFileName = IO.Path.GetFileName(optfile) Dim src As System.IO.Stream = IO.File.OpenRead(opt_file)
Dim request As System.Net.FtpWebRequest request = System.Net.FtpWebRequest.Create(Me.GetUri(path, targetFileName)) request.EnableSsl = Me.SSL request.Credentials = Me.Credentials request.UseBinary = CBool(Me.TransferType) request.KeepAlive = False request.Method = System.Net.WebRequestMethods.Ftp.UploadFile Dim trg As System.IO.Stream = request.GetRequestStream Dim BU% = Me.BUF_SIZE - 1 Dim buffer(BU) As Byte, bl% = BU + 1 While src.Length - src.Position > 0 Array.Clear(buffer, 0, bl) bl = src.Length - src.Position If bl >= BU Then bl = BU src.Read(buffer, 0, bl) Else ReDim buffer(bl) src.Read(buffer, 0, bl) End If trg.Write(buffer, 0, bl) End While trg.Close() trg.Flush() trg.Dispose() src.Close() src.Dispose() Return request.GetResponseEnd Function Public Function SingleRename(ByVal path$, ByVal optfile$, ByVal newFileName$) As System.Net.FtpWebResponse Dim request As System.Net.FtpWebRequest request = System.Net.FtpWebRequest.Create(Me.GetUri(path, optfile)) request.EnableSsl = Me.SSL request.Credentials = Me.Credentials request.KeepAlive = False request.RenameTo = newFileName request.Method = System.Net.WebRequestMethods.Ftp.Rename Return request.GetResponse End Function Public Function SingleMKDIR(ByVal path$, Optional ByVal dirName$ = Nothing) As System.Net.FtpWebResponse Dim request As System.Net.FtpWebRequest request = System.Net.FtpWebRequest.Create(Me.GetUri(path, dirName)) request.EnableSsl = Me.SSL request.Credentials = Me.Credentials request.KeepAlive = False request.RenameTo = Me.GetLastName(request.RequestUri) request.Method = System.Net.WebRequestMethods.Ftp.MakeDirectory Return request.GetResponse End Function
Sub New(ByVal server$, ByVal user$, ByVal password$) Me.Credentials = New System.Net.NetworkCredential(user, password) Me.Host = FTP.RemoveEndSlash(server) Me.TransferType = FTP.FtpTransferType.Binary Me.SSL = False Me.BUF_SIZE = 64 End Sub End Class
-
anyway. u'd rather removed your credentials from ur pasted code :)
Post a reply
Quick links
Recent activity
- Luc Joly replied to Help with datagridview
- MA Awan replied to adding a box to rtb
- Vish Rao replied to Anyone needing Application ...
- sampada godbole replied to Sharepoint : GroupBy result...
- Amol Benare replied to Receiving bulk SMS using AT...
- Amol Benare replied to Receiving bulk SMS using AT...
Enter your message below
Sign in or Join us (it's free).