vb中怎么把时间格式化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vb中怎么把时间格式化相关的知识,希望对你有一定的参考价值。

从text中得到年,月,日,时,分,秒。用什么函数能把他们组合成yyyy:mm:dd hh:nn:ss的时间格式。我知道Timeserial只能做以部分。

1、首先新建一个标准EXE工程。在窗体上设置所需要的控件,包括文本框和命令按钮。

2、编写命令按钮的代码,代码书写如下图所示。

3、设置好代码后,选中文本中的内容,然后点击复制按钮。

4、即可将左边的文本框内容复制到右边的文本框,运行的结果如下图。


5、接着编写清除命令按钮的代码,具体的代码书写如下图所示。

6、设置好代码后,选中文本框中的内容,然后点击清空按钮即可将文本框内容清空,运行的结果如下图。

参考技术A 时间格式:
Format(Now(),"HH:mm:ss")
日期格式:
Format(Now(),"yyyy/MM/dd")
如果将时间格式中的mm换为MM,出来的结果将不是时间了。
在时间和日期的格式化函数中,MM表示月,mm表示的是分钟,HH代表24小时制,hh代表12小时制,这四个地方必须注意!而且其他的字母必须小写,否则显示出来的就是字符。
至于用的间隔符是“:”还是“/”抑或“—”这个是无所谓的,只要统一即可。
参考技术B time()
second()
now()
hand() and so on 书上应该有这些常用函数。
参考技术C Debug.Print Format(text1.text,"yyyy-MM-dd HH:mm:ss") 参考技术D format(date$,"YYYYMMDD") & format(time$,"HHMMSS")本回答被提问者采纳

高分求-VB 把ANSI文本转换成UTF-8,多谢!!

比如在F盘的TEMP文件夹里有一个A.TXT,其编码为ansi,希望高手帮写个程序,把该文本转换成UFT-8的编码
要求该函数或过程传入的参数是文件的路径,比如传入"f:\temp\a.txt"
然后就会将f:\temp\a.txt转换成UTF-8编码格式的文件,替换掉原先的a.txt
成功后追加100分,不胜感激!
强烈鄙视一楼,首先是你复制来的答案就是我以前找UTF-8转ANSI时人家给的答案,而你一字不差的抄了下来,你也不看看标题,现在是反的。

根据反馈,代码已作修改并调试通过:

分二步:
一、建立一个模块,复制下面代码
Option Explicit
Private Declare Function MultiByteToWideChar Lib "kernel32" (ByVal CodePage As Long, ByVal dwFlags As Long, ByRef lpMultiByteStr As Any, ByVal cchMultiByte As Long, ByVal lpWideCharStr As Long, ByVal cchWideChar As Long) As Long
Private Const CP_UTF8 = 65001

'读文件至变量
Private Function GetFile(FileName As String) As String
Dim i As Integer, BB() As Byte
If Dir(FileName) = "" Then Exit Function
i = FreeFile
ReDim BB(FileLen(FileName) - 1)
Open FileName For Binary As #i
Get #i, , BB
Close #i
GetFile = BB
End Function

'功能: 把Utf8字符转化成ANSI字符
Public Function UTF8_Decode(FileName As String) As String
Dim sUTF8 As String
Dim lngUtf8Size As Long
Dim strBuffer As String
Dim lngBufferSize As Long
Dim lngResult As Long
Dim bytUtf8() As Byte
Dim n As Long
sUTF8 = GetFile(FileName)
If LenB(sUTF8) = 0 Then Exit Function
On Error GoTo EndFunction
bytUtf8 = sUTF8
lngUtf8Size = UBound(bytUtf8) + 1
lngBufferSize = lngUtf8Size * 2
strBuffer = String$(lngBufferSize, vbNullChar)
lngResult = MultiByteToWideChar(CP_UTF8, 0, bytUtf8(0), _
lngUtf8Size, StrPtr(strBuffer), lngBufferSize)
If lngResult Then
UTF8_Decode = Left(strBuffer, lngResult)
End If
EndFunction:

End Function

二、调用举例:
如果你想把一个"c:\1.txt"的UTF-8文件转换为ANSI编码,可这样调用
dim s as string
s=UTF8_Decode("c:\1.txt") '文件名请根据实际修改
此时,s存放的就是ANSI格式编码了,不会出现乱码问题

参考资料:http://zhidao.baidu.com/question/123224632.html?fr=im2

参考技术A Private Sub AnsiToUtf8 (FileName as String)
Dim b() As Byte, S As String
Dim ADO_Stream As Object
If Dir(FileName) = "" Then Exit Sub
ReDim b(FileLen(FileName))
Open FileName For Binary As #1
Get #1, , b
Close #1
S = StrConv(b, vbUnicode)
Set ADO_Stream = CreateObject("ADODB.Stream")
With ADO_Stream
.Type = 2
.Mode = 3
.Charset = "utf-8"
.open
.WriteText S
.SaveToFile FileName, 2
End With
Set ADO_Stream = Nothing

End Sub

参考资料:http://zhidao.baidu.com/question/83609963.html?si=3

本回答被提问者采纳

以上是关于vb中怎么把时间格式化的主要内容,如果未能解决你的问题,请参考以下文章

在VB中,如果检测到某文本文件为非UTF8格式则自动转换为UTF8格式?

在VB.NET中如何将日期类型转化为String型?

vb 时间戳转换成时间

vb6不可识别的数据库格式,修复后就少个表

vb.net 2010日期格式和系统日期格式不一致,求解

VB 如何把access中的字符串日期转换成日期格式并能计算日期