WinForm相对路径的陷阱
本文所述为使用WinForm相对路径时需要注意的陷阱。这类错误经常会遇到!现分析如下供大家参考。
在Window系统上利用相对路径进行操作时,有一个“当前目录”的概念,如果程序中是利用相对路径进行操作,系统会认为是在当前目录下进行操作,即 相对路径 等于 当前目录 + 相对路径 所组成的绝对路径。
应用程序默认的当前目录为:程序入口所在路径。
并且在WinForm中,OpenFileDialog.RestoreDirectory 或 SaveFileDialog.SaveFileDialog 的设置都可以影响到当前目录,可以造成当前目录的改变。
当前目录一旦改变,就会影响到相对路径,进而造成文件系统的寻址不正确。
所以在实际的编程中、请谨慎使用相对路径!如果因为相对路径出现bug,会让你感到欲哭无泪!
希望本文所述对大家C#程序设计有所帮助。
相关推荐
-
C#路径,文件,目录及IO常见操作汇总
本文实例汇总了C#路径,文件,目录及IO常见操作.分享给大家供大家参考.具体如下: 问题1:如何判定一个给定的路径是否有效/合法: 通过Path.GetInvalidPathChars或Path.GetInvalidFileNameChars方法获得非法的路径/文件名字符,可以 根据它来判断路径中是否包含非法字符: 问题2:如何确定一个路径字符串是表示目录还是文件: 1.使用Directory.Exists或File.Exist方法,如果前者为真,则路径表示目录:如果后者为真,则路径表示文件:
-
C#文件路径操作详细总结
一.获取当前文件的路径1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName获取模块的完整路径,包括文件名. 2. System.Environment.CurrentDirectory获取和设置当前目录(该进程从中启动的目录)的完全限定目录. 3. System.IO.Directory.GetCurrentDirectory() 获取应用程序的当前工作目录.这个不一定是程序从中启动的目录啊,有可能程序放在C:
-
使用C#获取系统特殊文件夹路径的解决方法
win7下无法向c盘写入文件,当前用户只能向自己的用户文件夹写入文件,比如MyDocuments,文件夹,用c#得到这些文件夹的目录方法是: 复制代码 代码如下: string path=System.Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); Environment.SpecialFolder 枚举说明: CommonApplicationData 目录,它用作所有用户使用的应用程序特定数据的公共储存库.
-
c#文件名/路径处理方法示例
复制代码 代码如下: string filePath = @"E:\Randy0528\中文目录\JustTest.rar"; Response.Write("文件路径:"+filePath); Response.Write("<br/>更改路径字符串的扩展名.<br/>"); Response.Write(System.IO.Path.ChangeExtension(filePath, "txt"))
-
C# WinForm编程获取文件物理路径的方法
本文介绍如何在使用C#开发WinForm程序时,获取程序文件的物理路径.这个物理路径可以用于定位程序所在的目录,从而进行日志创建等扩展操作. 在C#开发时,可以很方便的获取程序文件的物理路径..NET Framework提供了一个AppDomain.CurrentDomain类,这个类有一个静态属性,那就是BaseDirectory,它就保存了程序文件的物理路径.我们可以使用ToString()的方法来将其读出. 复制代码 代码如下: /// <summary> /// 返回程序路径(即工作路
-
C#中winform使用相对路径读取文件的方法
本文实例讲述了C#中winform使用相对路径读取文件的方法.分享给大家供大家参考.具体分析如下: 目录结构如下图所示: 方法一:由于生成的exe文件在bin\debug目录下,可以使用向上查找目录的方式获取要读取的xml文件 复制代码 代码如下: string haarXmlPath = @"../../haarcascade_frontalface_alt_tree.xml"; FileInfo file = new FileInfo(fileName); string fu
-
C#实现获取程序路径方法小结
本文实例讲述了C#实现获取程序路径方法.分享给大家供大家参考.具体如下: 获取DLL的目录: Assembly myAssembly = Assembly.GetEntryAssembly(); string path = myAssembly.Location; DirectoryInfo dr = new DirectoryInfo(path); path=dr.Parent; //当前目录的上一级目录 C#获取程序当前路径的方法: System.Environment.CurrentDir
-
C#中Winform获取文件路径的方法实例小结
本文实例讲述了C#中Winform获取文件路径的方法.分享给大家供大家参考.具体如下: 获取文件名方法: 用System.IO.Path.GetFileName和System.IO.Path.GetFileNameWithoutExtension(无扩展名)的方法 获取文件路径方法: //获取当前进程的完整路径,包含文件名(进程名). string str = this.GetType().Assembly.Location; result: X:\xxx\xxx\xxx.exe //(.exe
-
WinForm相对路径的陷阱
本文所述为使用WinForm相对路径时需要注意的陷阱.这类错误经常会遇到!现分析如下供大家参考. 在Window系统上利用相对路径进行操作时,有一个"当前目录"的概念,如果程序中是利用相对路径进行操作,系统会认为是在当前目录下进行操作,即 相对路径 等于 当前目录 + 相对路径 所组成的绝对路径. 应用程序默认的当前目录为:程序入口所在路径. 并且在WinForm中,OpenFileDialog.RestoreDirectory 或 SaveFileDialog.SaveFileDia
-
C#新手常犯的错误汇总
本文所述为C#新手常犯的错误,但是实际上很多有经验的程序员也经常犯这些错误,对此特别整理了一下,供大家参考.具体如下: 1.遍历List的错误,比如如下代码: List<String> strList =newList<String> for(int i =0; i<strList.Count; i++) { strList.RemoveAt(i); } 这段代码看上去是删除了所有元素,实际上每次调用RemoveAt方法会导致List元素索引重排,最后导致元素没有完全删除.
-
《Python学习手册》学习总结
本篇文章是作者关于在学习了<Python学习手册>以后,分享的学习心得,在此之前,我们先给大家分享一下这本书: 下载地址:Python学习手册第4版 之前为了编写一个svm分词的程序而简单学了下Python,觉得Python很好用,想深入并系统学习一下,了解一些机制,因此开始阅读<Python学习手册>. 在前两章节都是对基本的信息做了概述,我们从第三章开始. 第三章 如何运行程序 import进行模块导入只能运行一次,多次运行需使用reload. 模块往往是变量名的封装,被认为是
-
.Net WInform开发笔记(三)谈谈自制控件(自定义控件)
末日这天写篇博客吧,既然没来,那就纪念一下. 这次谈谈自制控件,也就是自定义控件,先上图,再说 1.扩展OpenFileDialog,在OpenFileDialog中添加各种文件(.txt,.jpg,.excel等等)的预览功能 2.重写ListBox,增加折叠.鼠标背影.分类等功能 -----------------------------分割线--------------------------------------------------------------一.扩展OpenFileD
-
深入浅析WinForm 进程、线程及区别介绍
一.进程 进程是一个具有独立功能的程序关于某个数据集合的一次运行活动. 它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体. Process 类,用来操作进程. 命名空间:using System.Diagnostics; Process.Start("calc"); //打开计算器 Process.Start("mspaint"); //打开画图 Process.Start("iexplore" , "http://www.
-
Winform控件SaveFileDialog用于保存文件
SaveFileDialog用于保存文件,供大家参考,具体内容如下 1.新建Winform窗体应用程序,命名为SaveFileDialogDemo. 2.在界面上添加一个按钮的控件(用于打开保存文件对话框),添加文本控件,用于输入要保存的内容. 3.后台代码实现: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing;
-
Winform OpenFileDialog打开文件对话框
OpenFileDialog类提供了用户打开文件的功能,它有如下属性: 属性 InitialDirectory:设置对话框的初始目录. Filter:要在对话框中显示的文件筛选器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)||*.*". FilterIndex:在对话框中选择的文件筛选器的索引,如果选第一项就设为1. RestoreDirectory:控制对话框在关闭之前是否恢复当前目录. FileName:第一个在对话框中显示的文件或最后一个选取的文件. Titl
随机推荐
- js中settimeout方法加参数
- docker容器如何优雅的终止详解
- Bootstrap实现提示框和弹出框效果
- js活用事件触发对象动作
- Java实现利用广度优先遍历(BFS)计算最短路径的方法
- JAVA 注解详解及简单实例
- python处理二进制数据的方法
- 使用VMware为centos添加硬盘
- 如何使用JS获取IE上传文件路径(IE7,8)
- 请离开include_once和require_once
- 基于PHPExcel的常用方法总结
- python定时器使用示例分享
- 让Android应用不被杀死(killer)的方法
- c# 在windows服务中 使用定时器实例代码
- Docker v1.13 新功能介绍
- asp 取得中文句子头一个字的大写拼音字母的函数
- JS基于clipBoard.js插件实现剪切、复制、粘贴
- javascript 获取元素位置的快速方法 getBoundingClientRect()
- 一个检测OpenSSL心脏出血漏洞的Python脚本分享
- 简单谈谈AJAX核心对象