在类库中如何获得文件夹相对路径?

xmzhy 2003-12-03 11:35:54
我想把所有类写在类库中,便于调用。为了便于调用数据库,我想用相对路径处理。
例如:Public StartPath as String =Application.StartupPath & "\Order.mdb"
在应用程序中可以调用,但是在类库中系统提示Application 未声明。请问如何解决这个问题?
...全文
251 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
okeycome 2003-12-10
  • 打赏
  • 举报
回复
CMIC(大象)说得对.既然楼主是想做成比较通用的类库,那就最好不要在类里把范围搞窄了,包括MDB库名,都不合适内置在类库中,还是作为类属性的值传入得好.
另外,gxingmin(小高)的代码我还没试,不过看起来感觉很好,受教了.
NoReady 2003-12-10
  • 打赏
  • 举报
回复
gxingmin(小高) 的方法可以啊
xmzhy 2003-12-10
  • 打赏
  • 举报
回复
azyue(沙漠之弧) :
我关联的是SQL Server,如果用VB就容易实现,请问VB.net如何实现?
azyue 2003-12-08
  • 打赏
  • 举报
回复
数据库的连接字符串可以作为参数有外部传递,在初始化类的构造函数中加载。故不要使用相对路径
azyue 2003-12-08
  • 打赏
  • 举报
回复
同意楼上的
gxingmin 2003-12-04
  • 打赏
  • 举报
回复
public function GetAppPath() as string
Dim strPath As String = System.Reflection.Assembly.GetExecutingAssembly.Location
Dim i As Integer = strPath.LastIndexOf("\")
If i > 0 Then
strPath = Left(strPath, i)
End If
return strPath
end function
seawind119 2003-12-03
  • 打赏
  • 举报
回复
学习
xmzhy 2003-12-03
  • 打赏
  • 举报
回复
azyue(沙漠之弧):
继承form类,不能解决问题。请问还有什么高招?
azyue 2003-12-03
  • 打赏
  • 举报
回复
类库最好不要,要不你就继承form类。
CMIC 2003-12-03
  • 打赏
  • 举报
回复
Application 是在 System.Windows.Forms名字空间下的,但在类库中最好不要使用,加以你用一个属性DataPath将数据库路径传入。
arbiterzhou 2003-12-03
  • 打赏
  • 举报
回复
关注
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能。可以将ftp4j嵌到你的Java应用,来传输文件(包括上传和下载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括:通过 TCP/IP直接连接,通过FTP代理、HTTP代理、SOCKS4/4a代理和SOCKS5代理连接,通过SSL安全连接。 简单应用---API介绍 The main class of the library is FTPClient (it.sauronsoftware.ftp4j.FTPClient). 1. 创建FTPClient实例 FTPClient client = new FTPClient(); 连接到指定的FTP服务器(域名或IP) 不指定端口,则使用默认端口21 client.connect("ftp.host.com", /*21*/); 登录验证 client.login("user", "pswd"); 下面是匿名登录 //client.login("anonymous", "密码任意设置"); client.login("anonymous", "ftp4j"); 安全退出 client.disconnect(true); //强制退出 //client.disconnect(false); 文件以及文件夹操作: 取得当前文件夹 String dir = client.currentDirectory(); 改变当前文件夹 client.changeDirectory(newPath); //绝对路径 //client.changeDirectory("/an/absolute/one"); //相对路径 //client.changeDirectory("relative"); //回退到上级目录 client.changeDirectoryUp(); //重命名文件或文件夹 client.rename("oldname", "newname"); //移动文件或文件夹 client.rename("myfile.txt", "myfolder/myfile.txt"); //删除文件 client.deleteFile(relativeOrAbsolutePath); //client.deleteFile("useless.txt"); //创建目录 client.createDirectory("newfolder"); //删除目录(空目录) client.deleteDirectory(absoluteOrRelativePath); //client.deleteDirectory("oldfolder"); //浏览文件 FTPFile[] list = client.list(); //使用通配浏览文件 FTPFile[] list = client.list("*.jpg"); //显示文件或文件夹的修改时间 java.util.Date md = client.modifiedDate("filename.ext"); //上传和下载文件 //下载服务器上remoteFile.ext 下载到本地 localFile.ext client.download("remoteFile.ext", new java.io.File("localFile.ext")); //上传 本地 localFile.ext 到当前目录 client.upload(new java.io.File("localFile.ext")); // 上传和下载文件时, 监听文件传输的状态 public class MyTransferListener implements FTPDataTransferListener { //文件开始上传或下载时触发 public void started() { } //显示已经传输的字节数 public void transferred(int length) { } //文件传输完成时,触发 public void completed() { } //传输放弃时触发 public void aborted() { // Transfer aborted } //传输失败时触发 public void failed() { } 示例: client.download("remoteFile.ext", new java.io.File("localFile.ext"), new MyTransferListener()); client.upload(new java.io.File("localFile.ext"), new MyTransferListener()); //ftp4j也支持断点续传功能 下面是一个简单示例:*参数 1056 跳过 1056字节点下载 client.download("remoteFile.ext", new java.io.File("localFile.ext"), 1056); 设置传输模式 //ASC码 client.setType(FTPClient.TYPE_TEXTUAL); //二进制 client.setType(FTPClient.TYPE_BINARY); //自动选择(根据文件内容) client.setType(FTPClient.TYPE_AUTO); //设置连接器 client.setConnector(connector); SSL 套接字连接 client.setConnector(it.sauronsoftware.ftp4j.connectors.SSLConnector) client.setConnector(anyConnectorYouWant);

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧