创建文件

Dim strFile As String = String.Format("C:\ErrorLog.txt", DateTime.Today.ToString("dd-MMM-yyyy"))
File.AppendAllText(strFile, String.Format("Error Message in Occured at-- {0}{1}", DateTime.Now, Environment.NewLine))

第一句话的意思是在c盘下面创建一个ErrorLog.txt的文本文档,第二句话的意思是,在这个文本文档中写入"Error Message in Occured at--后面接当前时间,每打印一句就换一行。

上面是直接从本地磁盘写,那么,如果从数据库中要读取后缀.bin的文件,然后在写入本地磁盘该如何做呢?

从数据库读取文件

                           '读取数据库中bin文件
Dim blobFiles As Integer =
Try
System.IO.Directory.CreateDirectory("C:\var\")
myCommand.CommandText = "select blobFile from evnet.join_server_firmware_version order by dttDateTime desc" '从数据库中读取存放文件字段按时间最新
Dim dr As MySqlDataReader = myCommand.ExecuteReader()
dr.Read()
Dim b(dr.GetBytes(blobFiles, , Nothing, , Integer.MaxValue) - ) As Byte '声明b数组存放读取到的dr
dr.GetBytes(blobFiles, , b, , b.Length) '将b读取到的数存放在blobFiles中
dr.Close()
conn.Close()
conn.Open()
myCommand.CommandText = "select vchfimware_versionName from evnet.join_server_firmware_version order by dttDateTime desc"
VersionName = myCommand.ExecuteScalar
conn.Close()
If System.IO.File.Exists("C:\var\" + VersionName + ".txt") Then '判断当前c盘是否存储有该文件夹 Else
Dim fs12 As New System.IO.FileStream("C:\var\" + VersionName + ".txt ", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite) '无则创建改文件
fs12.Write(b, blobFiles, b.Length) '向创建的文件中开始写,一次性写完
fs12.Close() '关闭读写操作,以免引发异常
fs12.Dispose()
End If
'======================
Catch ex As Exception
Debug.Print("#######################" & ex.StackTrace)
Debug.Print("########" & ex.Message)
Throw ex
End Try

每次只读取2014长度的字节

 Dim fs As New System.IO.FileStream("C:\var\" + VersionName + ".txt", IO.FileMode.Open, IO.FileAccess.Read)  Dim buffer() As Byte
Dim re As New System.IO.BinaryReader(fs)
Dim numdouble As Double = (fs.Length / )
num = Math.Ceiling(numdouble) '此函数用于判断是否有小数,有小数将自动取整比如:1.2将会取2,1.6将会取2
fs.Seek(i * ByNum.c, SeekOrigin.Begin)
re.Read(buffer, , ) '表示从0位开始读1024位 如果想取分组包长度可用 buffer.Length 如果想取数据则直接可取buffer

 将VS中输出的debug统一放入指定的txt文件夹中

 Public Const LOG_PATH As String = "C:\Users\Public\Documents\ECharge\"
If Not System.IO.Directory.Exists(Main.LOG_PATH) Then
System.IO.Directory.CreateDirectory(Main.LOG_PATH)
End If
If Not System.IO.Directory.Exists(Main.LOG_PATH & "Connect Server") Then
System.IO.Directory.CreateDirectory(Main.LOG_PATH & "Connect Server")
End If
If Not System.IO.Directory.Exists(Main.LOG_PATH & "Connect Server\Exception\") Then
System.IO.Directory.CreateDirectory(Main.LOG_PATH & "Connect Server\Exception\")
End If
If Not System.IO.Directory.Exists(Main.LOG_PATH & "Connect Server\Exception\" & Main.serverID & "\") Then
System.IO.Directory.CreateDirectory(Main.LOG_PATH & "Connect Server\Exception\" & Main.serverID & "\")
End If
Dim Str As New FileStream(Main.LOG_PATH & "Connect Server\Exception\" & Main.serverID & "\" & "DebugMessages.txt", System.IO.FileMode.Append)
Dim DebugFile As New StreamWriter(Str)
Dim Listener = New TextWriterTraceListener(DebugFile) Debug.Listeners.Add(Listener)
Debug.AutoFlush = True Debug.Print("----- start debug print to file")

 上述代码将程序运行的debug放到c盘指定的目录,并创建一个DebguMessage.txt文档,执行后效果图如下:

VB.NET创建随机数

     '产生随机数
Try
Dim Vchar As String = "00030,0031,00032,00033,00034,00035"
Dim VcArray() As String = Split(Vchar, ",") '将字符串生成数组
Dim VNum As String = ""
Dim objRandom As Random = New Random
objRandom.Next(, )
VNum = VNum & VcArray(Int(objRandom.Next(, ))) '数组从0开始读取,后面指定读取最大界限,防止数组越界
MessageBox.Show(VNum)
Catch ex As Exception
Debug.Print(ex.Message)
Throw ex
End Try

VB.NET Integer类型转成byte类型并调用sort方法重新对元素排序

 Public Sub setChargerStattimeStamp(ByRef StataTimeStamp As Integer)
Try
chargerStatTimeStamp = BitConverter.GetBytes(StataTimeStamp)
Dim sorts As List(Of Byte) = New List(Of Byte)(chargerStatTimeStamp)
sorts.Sort()
chargerStatTimeStamp() = sorts()
chargerStatTimeStamp() = sorts()
chargerStatTimeStamp() = sorts()
chargerStatTimeStamp() = sorts()
Catch ex As Exception
Throw ex
End Try
End Sub

VB.NET byte免拼接高级写法

 Public Sub setRemoteUID(ByRef byteArray() As Byte)
Try
'D1 46 A3 6A 5E 08 04 00 01 D7 15 65 0B 94 3D 1D 原始UID:209701631069429
Array.Copy(byteArray, , Me.remoteUid, , UID_LENGTH)
Array.Resize(Me.remoteUid, UID_LENGTH)
ArrayRemove(byteArray, UID_LENGTH)
Dim id As String() = Me.remoteUid.Select(Function(byt) byt.ToString("x2")).ToArray
Dim uid As String = String.Join("-", id).ToUpper
Me.remoteUid_Value = uid
Dim id1 As String() = Me.remoteUid.Select(Function(byt) byt.ToString("x2")).ToArray
Dim uid1 As String = String.Join("", id).ToUpper
Meter_Reading.ByNum.Uid = Me.remoteUid_Value
Meter_Reading.ByNum.vchprivateID = uid1
Debug.Print("##############remoteUid_Value=" & Me.remoteUid_Value)
Debug.Print("##############vchprivateID=" & Meter_Reading.ByNum.vchprivateID)
Catch ex As Exception
Throw ex
End Try
End Sub

end

VB.NET 创建文件以及文件的读写(创建随机数)的更多相关文章

  1. Java之字符流读写文件、文件的拷贝

    字符流读数据 – 按单个字符读取 创建字符流读文件对象: Reader reader = new FileReader("readme.txt"); 调用方法读取数据: int d ...

  2. python读写、创建文件、文件夹等等

    python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目 ...

  3. C#/VB.NET 创建PDF/UA文件

    1.什么是PDF/UA文件 PDF/UA,即Universally Accessible PDF,该格式的PDF文件是于2012年8月以ISO标准14289-1发布的.具有普遍可访问的PDF文档标准. ...

  4. C# 操作文件类,文件夹存在判断,创建,文件内容读写。

    此篇文档是老早就放到草稿箱中了,断断续续编辑了几次.结合自己经常用到的对于文件的操作,结合msdn做此文. 1.File 类 --转自msdn 常用方法: 名称 说明 AppendAllLines(S ...

  5. Linux 服务器如何设置文件和文件夹的读写权限

    修改文件可读写属性的方法 例如:把index.htm 文件修改为可写可读可执行: chmod 777 index.htm 要修改目录下所有文件属性可写可读可执行: chmod 777 *.* 该命令中 ...

  6. 【测试技术】ant在测试中的使用@文件以及目录的读写删和复制

    ant其实就是一个java的打包工具,存在的时间已经很久了,很多同行在使用中可能就是用,对为什么要用它,能够怎么用没有更多的了解: ---------------------------------- ...

  7. Android SD卡创建文件和文件夹失败

    原文:Android SD卡创建文件和文件夹失败 功能需要,尝试在本地sd卡上创建文件和文件夹的时候,报错,程序崩溃. 一般情况下,是忘记给予sd卡的读写权限.但是这里面权限已经给了,还是报错. 在网 ...

  8. 7.打开文件、文件读写操作、with方式、文件常用函数

    打开文件: 在python3中,打开文件的函数是: open(file, mode='r', buffering=None, encoding=None, errors=None, newline=N ...

  9. 使用POI读取/创建Execl(.xlsx)文件

    最近项目中用到了解析Execl表格的功能,在网上百度了一下自己写了一个小Demo.由于项目中使用的是Execl2007,就是后缀为.xlsx的,所以只研究了解析和创建Execl2007的文件,解析Ex ...

  10. python判断文件和文件夹是否存在、没有则创建文件夹

    原文出处:https://www.cnblogs.com/hushaojun/p/4533241.html >>> import os >>> os.path.ex ...

随机推荐

  1. StatePattern

    class Program { static void Main(string[] args) { var state = new OpeningState(); var lift = new Lif ...

  2. javascript基础知识

    1.javascript 表单验证,减轻服务器压力 制作网页特效 动态改变页面内容 基于对象和事件驱动的,具有安全性能的脚本语言 交互,脚本语言.解释性语言,边执行边解释 2.script标签 添加位 ...

  3. es6 数组的工具类

    根据Es6中map和Set的特性,实现了对array的分组和转换操作. exports.mapToObj = function (strMap) { let obj = Object.create(n ...

  4. ThinkPHP框架的一些基础应用

    这是俺滴师傅给俺传授了的知识,特在此分享. TP框架,做PHP开发的都应该有所耳闻.下面,我们就来说说入口文件的生成: 创建新项目时,首先,在目录文件下创建一个新的文件夹.然后将Thinkphp框架文 ...

  5. c#/js代码命名规范及代码规范

    常用命名 列表,lUser 数组,arrUser 字符串,strTitle 用,分割的字符串,strStatuss(多个用逗号分割的状态) C# Entity层 统一以E开始,比如EUser,EOrd ...

  6. grunt-connect-proxy解决开发时跨域问题

    最近的项目中前后端是完全分离开发的,前端用grunt管理项目.这样就会导致一个问题:开发时前端调用后台的接口时因为不在一个服务器,所以会出现跨域问题.但是也不能用JSONP或CROS方式实现真正的跨域 ...

  7. jquery常见获取高度

    jquery获取文档高度和窗口高度,$(document).height().$(window).height() $(document).height():整个网页的文档高度 $(window).h ...

  8. [LintCode] Container With Most Water 装最多水的容器

    Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai).  ...

  9. WebService的开发、部署、调用

    本文参考其它文章和自己解决中间问题的经历记录,以C#开发WebService为例子,欢迎探讨: 一.C#开发WebService 在visual studio中新建ASP.NET Web服务应用程序, ...

  10. stl文件格式解析代码--java版

    代码是参考three.js中的stlLoader.js写的. 需要注意的地方,java中byte取值-128~127 package test_stl.test_entry; import java. ...