• NDuiker项目第2天总结


    昨天晚上基本上实现了通过托拽文件实现自动查看命令行的功能。总结一下遇到的技术问题和解决办法吧。

    托拽文件到文本框并在文本框显示文件名的办法:

    文本框的AllowDrap=True

        Private Sub txtFilePath_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles txtFilePath.DragEnter
            If e.Data.GetDataPresent(DataFormats.FileDrop) Then
                ' Assign the file names to a string array, in
                ' case the user has selected multiple files.
                Dim files As String() = CType(e.Data.GetData(DataFormats.FileDrop), String())
                Try
                    ' Assign the first image to the 'picture' variable.
                     Me.txtFilePath.Text = files(0)
                Catch ex As Exception
                    MessageBox.Show(ex.Message)
                    Return
                End Try
            End If
        End Sub

    取得临时文件名:
    IO.Path.GetTempFileName

    命令行两边加上双引号解决目录带空格问题:
    Chr(34) & sExecuteFilePath_ & Chr(34)

    读取文件使用编码格式:
    Dim fw As New IO.StreamReader(sTempRedirectFilePath_, System.Text.Encoding.Default)
            ViewReport = fw.ReadToEnd
    不使用这种办法,命令行中的中文提示变成乱码。

    总结:
    目前使用VB.Net来书写,基本上和以前的编程习惯差不多,从昨天的进展看,以前的经验优势真是很有用。

    遇到的问题:
    目前没有判断文件是否为可执行文件?
    文件是32位还是16位?
    文件是否支持命令行?

    PS:
    .Net应该更仔细的应用和了解,通过熟悉它的架构,对编程提高应该是很大的,比如:System.CodeDom.Compiler.TempFileCollection
    应该是一个处理编程中临时文件的类,通常临时文件在程序中有一个生命周期,通过这个类来控制临时文件的产生和销毁,可以很好的保证程序的架构和管理,继续努力吧。
  • 相关阅读:
    创建型模式之单例模式
    创建型模式之抽象工厂模式
    创建型模式之工厂模式
    设计模式的6大原则
    设计模式简介以及分类介绍
    线程同步的5种方式
    jvm内存分区及各区线程问题
    leetcode-Best Time to Buy and Sell Stock
    leetcode-Maximum Subarray
    实习小记-大公司小公司
  • 原文地址:https://www.cnblogs.com/Duiker/p/95142.html
Copyright © 2020-2023  润新知