****************移动文件夹************************

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操作文件夹的几个方法相关推荐

  1. Java在c盘fld目录下的文件名_VBS脚本常用代码大全2011整理.docx

    PAGE PAGE # / 38 VBS脚本常用经典代码收集于 2011年7月2日21:13:37整理 在网上查找资料的时候发现好多经典的 vbs 代码,收集起来也为了以后学 习. VBS播放音乐 D ...

  2. 用户home目录下的.gitconfig 和 库文件夹目录下的 .gitignore 示例

    .gitconfig文件: [user]name = hzhemail = 924948@qq.com[core]editor = viquotepath = false # git config - ...

  3. java打包没有src_maven 打包时,src/main/java目录下的xml等资源文件没有打包进去的问题...

    关于使用maven打包src/main/java中一些关于mybatis的xml都没有打包进去,导致war包启动不起来,在此记录一下,解决方法. 默认maven在src/main/java中只编译ja ...

  4. 使用python对比两个目录下的文件名差异

    前言 在做深度学习图像识别相关的项目,经常会使用到标注工具对图像进行标注,然后会在对应文件夹下生成文件名相同的标签文件,比如000023.jpg,标注后会生成000023.xml,或都000023.t ...

  5. linux批量更新文件夹里,Linux下使用touch批量修改文件夹和文件的时间

    发布时间:2015-07-26 22:51:41 下面只有两个参数存在差别,......[阅读全文] 阅读(3186) | 评论(0) | 转发(0) 发布时间:2015-06-19 17:25:38 ...

  6. U-Boot源码目录分析(VScode工程创建及文件夹过滤)

    参考:U-Boot工程目录介绍 作者:一只青木呀 发布时间: 2020-10-21 14:47:30 网址:https://blog.csdn.net/weixin_45309916/article/ ...

  7. windows下使用RoboCopy命令进行文件夹增量备份

    RoboCopy,它是一个命令行的目录复制命令,自从Windows NT 4.0 开始就成为windows 资源工具包的一部分,然后在Windows Vista.Windows 7和 Windows ...

  8. copy所有的java文件到硬盘_将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad...

    listFiles方法接受一个FileFilter对象,这个FileFilter对象就是过虑的策略对象,不同的人提供不同的FileFilter实现,即提供了不同的过滤策略. //将d:\java目录下 ...

  9. 将d:\java目录下的所有.java文件复制到d:\jad 目录下,并将原来文件的扩展名从.java 改为.jad

    package com;import java.io.*; import java.util.ArrayList; import java.util.List; /* 编写一个程序,将d:\java目 ...

最新文章

  1. iOS开发UI篇—核心动画简介
  2. java后门_@Java Web 程序员,我们一起给程序开个后门吧:让你在保留现场,服务不重启的情况下,执行我们的调试代码...
  3. 学习Maven之Maven Enforcer Plugin
  4. lru页面置换算法_C|内存管理|从LRU王国到NRU王国
  5. 【领奖啦】新年新客见面礼抽奖活动中奖名单出炉!
  6. 存钱吃利息存邮政储蓄好还是农业银行好?
  7. QPSK信号调制之ASCII码
  8. myecplise新建Maven项目Filter选什么,使用myeclipse建立maven项目
  9. springboot和springcloud有什么关系
  10. IOT(21)---:云、大数据、IOT深度融合 云计算进入3.0时代
  11. Ubuntu更改国内源,设置固定IP和DNS
  12. POJ 1095 Trees Made to Order
  13. android uid变化,在Android中安装期间确定应用的UID如何?
  14. Beini FeedingBottle[小巧的无线密码破解系统]
  15. verilog赋多位值_verilog语句两个always块对同一个变量赋值问题!【恢复】
  16. 文档多级列表_如何在Google文档中创建多级列表
  17. HTTP和MQTT协议实践
  18. uni小程序底线(没有更多)
  19. android多行文本输入,android EditText多行文本输入的若干问题
  20. 上课笔记--商法(上)

热门文章

  1. Win32汇编练习(SMU—循环结构)
  2. 华为鸿蒙os英语,华为正式发布HarmonyOS鸿蒙操作系统
  3. 视频讲解|KLTS -- K8s 长期维护支持版本
  4. 3GPP TS 29244-g30 中英文对照 | 5.4.15 Packet Rate enforcement
  5. 使用记录35_开通微信小游戏虚拟支付
  6. c语言程序设计项目实训总结,c语言程序设计实训总结.docx
  7. Android中Manifest.xml配置文件
  8. word显示“VBE6EXT.OLB不能加载”和“无法找到宏或宏已被禁用”
  9. 建立RADIUS认证服务器
  10. 《红楼梦》的读后感范文2300字