
16.12.2009, 16:18
|
|
Новичок
Регистрация: 15.10.2009
Сообщений: 8
С нами:
8722808
Репутация:
2
|
|
Решил проблему))
Задача была имитация жесткого диска )))
Тему можно закрывать
Если кому надо:
Сделал на вб, если кому надо на с шарп - переписать дело 5 минут
Код:
Imports System.IO
Public Class Form1
Dim tfName, TreecDir, TreecFn, TreecFnType, TreecSp, TreecDsinb, lgName, stupName As String
Dim Treeci As Integer
Dim Treecds As IO.DirectoryInfo
Private Sub LoadTreeViewFromFile(ByVal file_name As String, _
ByVal trv As TreeView)
' Get the file's contents.
Dim stream_reader As New StreamReader(file_name)
Dim file_contents As String = stream_reader.ReadToEnd()
stream_reader.Close()
' Remove line feeds.
file_contents = file_contents.Replace(vbLf, "")
' Break the file into lines.
Const charCR As Char = CChar(vbCr)
Const charTab As Char = CChar(vbTab)
Dim lines() As String = file_contents.Split(charCR)
' Process the lines.
Dim text_line As String
Dim level As Integer
Dim tree_nodes() As TreeNode
Dim num_nodes As Integer = 0
ReDim tree_nodes(num_nodes)
trv.Nodes.Clear()
For i As Integer = 0 To lines.GetUpperBound(0)
text_line = lines(i)
If text_line.Trim().Length > 0 Then
' See how many tabs are at the start of the
' line.
level = text_line.Length - _
text_line.TrimStart(charTab).Length
' Make room for the new node.
If level > num_nodes Then
num_nodes = level
ReDim Preserve tree_nodes(num_nodes)
End If
' Add the new node.
If level = 0 Then
tree_nodes(level) = trv.Nodes.Add(text_line.Trim())
Else
tree_nodes(level) = tree_nodes(level - 1).Nodes.Add(text_line.Trim())
End If
tree_nodes(level).EnsureVisible()
End If
Next i
If trv.Nodes.Count > 0 Then trv.Nodes(0).EnsureVisible()
End Sub
Private Sub gettin(ByVal startpath As String)
Try
For Each d As IO.DirectoryInfo In New IO.DirectoryInfo(startpath).GetDirectories
Treecds = New IO.DirectoryInfo(d.FullName)
TreecSp = Space(Treeci)
TreecSp = TreecSp.Replace(" ", vbTab)
TreecDsinb = TreecSp & d.Name
TreecFn = TreecDsinb
Using sw As New IO.StreamWriter(tfName, True)
sw.WriteLine(TreecFn)
sw.Close()
End Using
Try : If CBool(d.GetDirectories.Length) Then Treeci += 1 : gettin(d.FullName) : Treeci -= 1
Catch ex As Exception
End Try
Next
Catch ex As Exception
End Try
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
tfName = "c:\tr"
'gettin("c:\")
LoadTreeViewFromFile(tfName, TreeView1)
-
End Sub
End Class
Последний раз редактировалось hacknick; 16.12.2009 в 16:23..
|
|
|