Java在c盘fld目录下的文件名_VB操作文件夹的几个方法
****************移动文件夹************************
1、添加引用"microsoft scripting runtime"
2、使用方法
Option Explicit
Private Sub Form_Load()
Dim FileSys As New FileSystemObject
Dim FolderObj As Folder
Set FileSys = CreateObject("scripting.filesystemobject")
FileSys.CopyFile "c:/ss.txt", "d:/mm.txt", True'拷贝文件
FileSys.CopyFolder "c:/1", "d:/2", True'拷贝文件夹
End sub
***************新建文件夹**************************
Dim fso As New FileSystemObject, fdr As Folder,fdrPath as String
fdrPath="C:/newfolder"
fdr = fso.CreateFolder(fdrPath)
***************重命名文件夹***************
Dim aa As New Scripting.FileSystemObject
aa.MoveFolder "c:/1", "c:/2"
**************************************************
fileName = "c:/dzh/export/1001A1AA.XLS"
If Dir(fileName) = "" Then '文件存在
sWenJJ_MingC = "000001"
Else
sWenJJ_MingC = "000002"
End If
pathName = "c:/dzh/dataFX/" & sWenJJ_MingC
fso.MoveFolder "c:/dzh/export", pathName '文件夹剪切,重命名
fso.CreateFolder "c:/dzh/export" '新建文件夹
使用Dir后再使用fso.MoveFolder会产生错误!
If fso.FileExists(fileName) = False Then
sWenJJ_MingC = "000001"
Else
sWenJJ_MingC = "000002"
End If
改为以上代码判断文件是否存在即可解决问题。
另外,若dir使用很多修改不便的话可换另一方法,
先新建一个文件夹mkdir(),
再将原文件夹里面的东西全考到新文件夹即可。下面的SHFileOperation方法采用*.*参数即可实现。
***********************************另附参考代码*********************************
Dim fldr1 As Folder
Dim fldr2 As TextStream
Dim fso1 As New FileSystemObject
Dim bln1 As Boolean
Dim folds As String
Dim filestr As String
Dim str_r
folds = App.path & "/Fee" ’文件夹
Set fso1 = CreateObject("Scripting.FileSystemObject")
bln1 = fso1.FolderExists(folds)
If Not bln1 Then
Set fldr1 = fso1.CreateFolder(App.path & "/Fee") 如果不存在就建立
End If
上边的是判断文件夹
这个是判断文件
fileName = folds & "/name.txt" ‘文件名
bln1 = fso1.FileExists(fileName )
If Not bln1 Then ‘不存在 就创建一个
Set fldr2 = fso1.CreateTextFile(fileName , True)
fldr2.WriteLine str_r
fldr2.Close
Else
Set fldr2 = fso1.OpenTextFile(fileName , ForAppending, TristateFalse)
fldr2.WriteLine str_r
fldr2.Close
End If
****************************另一种非FSO方法*****************************
不用FSO的复制文件夹得方法?
用API函数 SHFileOperation
以下是使用SHFileOperation删除复制移动文件的例子,可以复制文件夹
Private Type SHFILEOPSTRUCT
hwnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAnyOperationsAborted As Long
hNameMappings As Long
lpszProgressTitle As String '只有在 FOF_SIMPLEPROGRESS 时用
End Type
Private Declare Function SHFileOperation Lib _
"shell32.dll" Alias "SHFileOperationA" (lpFileOp _
As SHFILEOPSTRUCT) As Long
'wFunc 常数
'FO_COPY 把 pFrom 文件拷贝到 pTo。
Const FO_COPY = &H2
'FO_DELETE 删除 pFrom 中的文件(pTo 忽略)。
Const FO_DELETE = &H3
'FO_MOVE 把 pFrom 文件移动到 pTo。
Const FO_MOVE = &H1
'fFlag 常数
'FOF_ALLOWUNDO 允许 Undo 。
Const FOF_ALLOWUNDO = &H40
'FOF_NOCONFIRMATION 不显示系统确认对话框。
Const FOF_NOCONFIRMATION = &H10
'FOF_NOCONFIRMMKDIR 不提示是否新建目录。
Const FOF_NOCONFIRMMKDIR = &H200
'FOF_SILENT 不显示进度对话框
Const FOF_SILENT = &H4
'例子:
Dim SHFileOp As SHFILEOPSTRUCT
' 删除
SHFileOp.wFunc = FO_DELETE
SHFileOp.pFrom = "c:/config.old" + Chr(0)
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION
Call SHFileOperation(SHFileOp)
' 删除多个文件
SHFileOp.wFunc = FO_DELETE
SHFileOp.pFrom = "c:/config.old" +Chr(0) + "c:/autoexec.old"+Chr(0)
SHFileOp.fFlags = FOF_ALLOWUNDO
Call SHFileOperation(SHFileOp)
' 拷贝
SHFileOp.wFunc = FO_COPY
SHFileOp.pFrom = "c:/t"
SHFileOp.pTo = "d:/"
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMMKDIR
Call SHFileOperation(SHFileOp)
' 移动
SHFileOp.wFunc = FO_MOVE
SHFileOp.pFrom = "c:/config.old" + Chr(0)
SHFileOp.pTo = "d:/t"
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION
Call SHFileOperation(SHFileOp)
***************vb 使用FSO遍历文件夹**************************
经测试,遍历文件有效,子文件夹好象有点问题
用文件系统对象,先创建该对象的文件夹对象,
Option Explicit
Dim ofso As FileSystemObject
Dim fo As Folder
Dim f As File
Dim InFo As Folder
Set ofso = New FileSystemObject
Set fo = ofso.GetFolder("asdfal;sdfj")
For Each f In fo.Files
List1.AddItem f.Name
Next
For Each InFo In fo.SubFolders
List1.AddItem fo.Name
Next
然后再作回归调用就可
注意:以上代码在遍历文件时不能对文件作保存,不然会陷入无限循环!
复制文件测试代码:
Private Sub Command1_Click()
Dim FileSys As New FileSystemObject
Dim FolderObj As Folder
Set FileSys = CreateObject("scripting.filesystemobject")
If Dir("d:/mz.txt", vbNormal) = "" Then
Dim mz As String
If Text1.Text <> "" Then
mz = Trim(Text1.Text)
FileSys.CopyFile "c:/ss.txt", "d:/mz.txt", True '拷贝c盘文件ss到d盘并改名为mm
Else
MsgBox "你必须输入一个名字"
End If
Else
MsgBox "D盘文件名存在,请改名!"
Exit Sub
End If
'If Dir("D:\2", vbDirectory) = "" Then
'FileSys.CopyFolder "c:/1", "d:/2", True '拷贝文件夹
'Else
'MsgBox "D盘文件名存在,请改名!"
'Exit Sub
'End If
End Sub
Java在c盘fld目录下的文件名_VB操作文件夹的几个方法相关推荐
- Java在c盘fld目录下的文件名_VBS脚本常用代码大全2011整理.docx
PAGE PAGE # / 38 VBS脚本常用经典代码收集于 2011年7月2日21:13:37整理 在网上查找资料的时候发现好多经典的 vbs 代码,收集起来也为了以后学 习. VBS播放音乐 D ...
- 用户home目录下的.gitconfig 和 库文件夹目录下的 .gitignore 示例
.gitconfig文件: [user]name = hzhemail = 924948@qq.com[core]editor = viquotepath = false # git config - ...
- java打包没有src_maven 打包时,src/main/java目录下的xml等资源文件没有打包进去的问题...
关于使用maven打包src/main/java中一些关于mybatis的xml都没有打包进去,导致war包启动不起来,在此记录一下,解决方法. 默认maven在src/main/java中只编译ja ...
- 使用python对比两个目录下的文件名差异
前言 在做深度学习图像识别相关的项目,经常会使用到标注工具对图像进行标注,然后会在对应文件夹下生成文件名相同的标签文件,比如000023.jpg,标注后会生成000023.xml,或都000023.t ...
- linux批量更新文件夹里,Linux下使用touch批量修改文件夹和文件的时间
发布时间:2015-07-26 22:51:41 下面只有两个参数存在差别,......[阅读全文] 阅读(3186) | 评论(0) | 转发(0) 发布时间:2015-06-19 17:25:38 ...
- U-Boot源码目录分析(VScode工程创建及文件夹过滤)
参考:U-Boot工程目录介绍 作者:一只青木呀 发布时间: 2020-10-21 14:47:30 网址:https://blog.csdn.net/weixin_45309916/article/ ...
- windows下使用RoboCopy命令进行文件夹增量备份
RoboCopy,它是一个命令行的目录复制命令,自从Windows NT 4.0 开始就成为windows 资源工具包的一部分,然后在Windows Vista.Windows 7和 Windows ...
- copy所有的java文件到硬盘_将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad...
listFiles方法接受一个FileFilter对象,这个FileFilter对象就是过虑的策略对象,不同的人提供不同的FileFilter实现,即提供了不同的过滤策略. //将d:\java目录下 ...
- 将d:\java目录下的所有.java文件复制到d:\jad 目录下,并将原来文件的扩展名从.java 改为.jad
package com;import java.io.*; import java.util.ArrayList; import java.util.List; /* 编写一个程序,将d:\java目 ...
最新文章
- iOS开发UI篇—核心动画简介
- java后门_@Java Web 程序员,我们一起给程序开个后门吧:让你在保留现场,服务不重启的情况下,执行我们的调试代码...
- 学习Maven之Maven Enforcer Plugin
- lru页面置换算法_C|内存管理|从LRU王国到NRU王国
- 【领奖啦】新年新客见面礼抽奖活动中奖名单出炉!
- 存钱吃利息存邮政储蓄好还是农业银行好?
- QPSK信号调制之ASCII码
- myecplise新建Maven项目Filter选什么,使用myeclipse建立maven项目
- springboot和springcloud有什么关系
- IOT(21)---:云、大数据、IOT深度融合 云计算进入3.0时代
- Ubuntu更改国内源,设置固定IP和DNS
- POJ 1095 Trees Made to Order
- android uid变化,在Android中安装期间确定应用的UID如何?
- Beini FeedingBottle[小巧的无线密码破解系统]
- verilog赋多位值_verilog语句两个always块对同一个变量赋值问题!【恢复】
- 文档多级列表_如何在Google文档中创建多级列表
- HTTP和MQTT协议实践
- uni小程序底线(没有更多)
- android多行文本输入,android EditText多行文本输入的若干问题
- 上课笔记--商法(上)
热门文章
- Win32汇编练习(SMU—循环结构)
- 华为鸿蒙os英语,华为正式发布HarmonyOS鸿蒙操作系统
- 视频讲解|KLTS -- K8s 长期维护支持版本
- 3GPP TS 29244-g30 中英文对照 | 5.4.15 Packet Rate enforcement
- 使用记录35_开通微信小游戏虚拟支付
- c语言程序设计项目实训总结,c语言程序设计实训总结.docx
- Android中Manifest.xml配置文件
- word显示“VBE6EXT.OLB不能加载”和“无法找到宏或宏已被禁用”
- 建立RADIUS认证服务器
- 《红楼梦》的读后感范文2300字