分享一个文件查找、替换制定的字符或数字之CS程序、附带源码

首先就上操作流程图:

图--登陆界面、登陆密码:alidoing.com

 

 图--界面说明(一看就懂)

图--文件查找到再替换

图--文件替换成功

图--替换后的文件

代码开始:

  登陆的代码就非常简单、没用数据库也没有调用远程接口、直接输入alidoing.com即可

View Code

 

主界面:

   这里的方法写的有点乱(说实话)、

 

        #region  Find()
        public void Find()
        {
            DataHelper.Count = 0;
            listView1.Items.Clear();
            listView2.Items.Clear();
            string FilePlace = textBox1.Text.Trim();
            GetRootfile(FilePlace);//子目录查找
            DirSearch(FilePlace);//根目录查找
        }
        #endregion

 

 

#region 查找磁盘的第一目录下的文件
        public void GetRootfile(string Sdir)
        {
            string[] files = Directory.GetFiles(Sdir, textBox2.Text);
            if (files.Length > 0)
            {
                    foreach (string file in files)
                    {
                        try
                        {
                            Add(file);
                        }
                        catch
                        {
                            continue;
                        }
                    }
            }
        }
        #endregion

 

 

#region 查找的方法
        private void Add(string f)
        {
            listView1.Items.Add(f);
            DataHelper.Count += 1;//统计个数
            this.Text = DataHelper.Count + ":" + f;//显示信息
            if (DataHelper.BtnStuate == 1)//update opreat
            {
                DataHelper.URLPlace = f;//赋值文件地址
                Reader();//读文件
                if (DataHelper.ReplaceKey == 1)
                {
                    DataHelper.Surestring = DataHelper.Toreplace;
                }
                DataHelper.GerReaplaceinfo = DataHelper.GetInfo.Replace(textBox3.Text,DataHelper.Surestring);
                if (DataHelper.GerReaplaceinfo.Length != DataHelper.GetInfo.Length)
                {
                    if (DataHelper.key == 1)
                    {
                        Writte();
                        listViewadd();
                    }
                    if (DataHelper.key == 0)
                    {
                        listViewadd();
                    }
                }
            }
        }
        #endregion
#region 根据磁盘路径(sDir)、文件类型查找
        void DirSearch(string sDir)
        {
            string FielType = textBox2.Text.Trim();

            try
            {
                foreach (string d in Directory.GetDirectories(sDir))
                {
                    try
                    {
                        foreach (string f in Directory.GetFiles(d, FielType))
                        {
                            try
                            {
                                Add(f);
                            }
                            catch
                            {
                                continue;
                            }

                        }
                        //GC.Collect();//内存管理
                        DirSearch(d);//递归
                    }
                    catch
                    {
                        continue;
                    }
                }
            }
            catch
            {
                GC.Collect();//内存管理
                
            }
        }
        #endregion

 

        #region Replace Btn 替换的方法
        private void button4_Click(object sender, EventArgs e)
        {
            DataHelper.Surestring = "";
            ReplaceForm re = new ReplaceForm();
            re.ShowDialog();
            DialogResult a = MessageBox.Show("Sure?","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question);
            if (a == DialogResult.OK)
            {
                DataHelper.ReplaceKey = 1;
                DataHelper.key = 1;//update
                Go();
            }
        }
        #endregion

我为什么要分享:

 

这是我做的。net中CS结构中的第一个项目、别喷、、

 

值得优化的地方是没加进度条!!!!!!!!!!!!!!!

 

源代码分享:http://pan.baidu.com/s/1hqxfX1y     解压密码:alidoing.com

 

 

目前本人在做Android和。net工作!

个人网站:www.alidoing.com    www.10086bank.com 

前天去面试了做前端、这对我帮助不小: 来自:http://www.cnblogs.com/joetao/articles/1967017.html

1.求y和z的值是多少?
<script type="text/javascript">
var x = 1;
var y = 0;
var z = 0;
function add(n){n=n+1;}
y = add(x);
function add(n){n=n+3;}
z = add(x);
</script>
都为undefined,因为没有返回值。

2.javascript是面向对象的,怎么体现javascript的继承关系?
使用prototype来实现。

3.javascript怎样选中一个checkbox,怎样设置它无效?
document.all.cb1[0].disabled = true;

4.form中的input可以设置为readonly和disable,请问2者有什么区别?
readonly不可编辑,但可以选择和复制;值可以传递到后台
disabled不能编辑,不能复制,不能选择;值不可以传递到后台

5.js中的3种弹出式消息提醒(警告窗口,确认窗口,信息输入窗口)的命令式什么?
alert
confirm
prompt

6.form中的input有哪些类型?


7.javaScript的2种变量范围有什么不同?

全局变量:当前页面内有效

局部变量:方法内有效

8.列举javaScript的3种主要数据类型,2种复合数据类型和2种特殊数据类型。

主要数据类型:string, boolean, number

复合数据类型:function, object

9.程序中捕获异常的方法?

window.error

try{}catch(){}finally{}

10.写出函数DateDemo的返回结果,系统时间假定为今天

function DateDemo(){

  var d, s="今天日期是:";

  d = new Date();

  s += d.getMonth() + "/";

  s += d.getDate() + "/";

  s += d.getYear();

  return s;

}

结果:今天日期是:7/17/2010

11.写出程序运行的结果?

for(i=0, j=0; i<10, j<6; i++, j++){

  k = i + j;

}

结果:10(小心陷阱)

 

12.运行的结果?

function hi(){
var a;
alert(a);
}

结果:undefined

 

13.运行的结果?

function hi(){
var a = null;
alert(a);
}

结果:null

 

14.浏览器的对象模型?

window

顶级对象

window.alert(msg)

window.prompt()

window.confirm()

if(window.confirm()){

...

}

window.open()

window.close()

document

document.write()

history

当用户浏览网页时,浏览器保存了一个最近所访问网页的url列表。这个列表就是用history对象表示。

history.back():后退

history.forward():前进

history.go(n):正数表示向前,负数表示向后

location

表示当前打开的窗口或框架的URL信息。

location.href:重定向

等价于location.assign(url)

location.host:类似www.163.com:80

navigator

表示浏览器的信息及js运行的环境

navigator.cookieEnabled:该属性表示是否启用cookie

screen

用于显示网页的显示器的大小和颜色

screen.width/screen.height:表示显示器的分辨率(总的宽度,高度)

15.XMLHTTPRequest对象是什么?
Ajax原理

16.超链接的属性target的可选值:_blank, _parent, _self, _top和框架名称有什么区别?

17.javascript的常用对象有哪些?

String, Math, Date和Array对象

18.innerHTML,innerText,outerHTML,innerText的区别?

 

你用Twitter吗? (在天朝最好问你用微博吗?)

    如果用,你都关注那些人?

你用Github吗?

    如果用,你关注的项目有什么?

你关注的博客有那些?

你使用那些版本管理系统,比如Git,SVN等?

你常用的开发环境是怎样的?比如操作系统,文本编辑器,浏览器,及其他工具等。

你能描述一下你制作一个网页的工作流程吗?

你能描述一下渐进增强和优雅降级之间的不同吗?

    如果提到了特性检测,可以加分。

请解释一下什么是语义化的HTML。

你更喜欢在哪个浏览器下进行开发?你使用那些开发人员工具?

你如何对网站的文件和资源进行优化?

    期待的解决方案包括:

    文件合并
    文件最小化/文件压缩
    使用CDN托管
    缓存的使用
    其他

为什么利用多个域名来存储网站资源会更有效?

    浏览器一次可以从一个域名下做多少资源?

请说出三种减低页面加载时间的方法。(加载时间指感知的时间或者实际加载时间)

如果你接到了一个使用Tab来缩进代码的项目,但是你喜欢空格,你会怎么做?

    建议这个项目使用像EditorConfig(http://editorconfig.org)之类的规范
    为了保持一致性,转换成项目原有的风格
    直接使用VIM的retab命令

请写一个简单的幻灯效果页面

    如果不使用JS来完成,可以加分。

你都使用那些工作来测试代码的性能?

    例如JSPerf (http://jsperf.com/)
    例如Dromaeo (http://dromaeo.com/)
    其它。

如果今年你打算熟练掌握一项新技术,那会是什么?

请谈一下你对网页标准和标准制定机构重要性的理解。

什么是FOUC?你如何来避免FOUC?
HTML相关问题

文档类型的作用是什么?你知道多少种文档类型?

浏览器标准模式和怪异模式之间的区别是什么?

使用XHTML的局限有那些?

    如果页面使用'application/xhtml+xml'会有什么问题吗?

如果网页内容需要支持多语言,你会怎么做?

    在设计和开发多语言网站时,有哪些问题你必须要考虑?

在HTML5的页面中可以使用XHTML的语法吗?

在HTML5中如何使用XML?

'data-'属性的作用是什么?

如果把HTML5看作做一个开放平台,那它的构建模块有那些?

请描述一下cookies,sessionStorage和localStorage的区别?
JS相关问题

你使用过那些Javascript库?

你是否研究过你所使用的JS库或者框架的源代码?

什么是哈希表?

'undefined'变量和'undeclared'变量分别指什么?

闭包是什么,如何使用它,为什么要使用它?

    你喜欢的使用闭包的模式是什么?

请举出一个匿名函数的典型用例?

请解释什么是Javascript的模块模式,并举出实用实例。

    如果有提到无污染的命名空间,可以考虑加分。
    如果你的模块没有自己的命名空间会怎么样?

你如何组织自己的代码?是使用模块模式,还是使用经典继承的方法?

请指出Javascript宿主对象和内置对象的区别?

指出下列代码的区别:

    function Person(){} var person = Person() var person = new Person() 

'.call'和'.apply'的区别是什么?

请解释'Funciton.prototype.bind'的作用?

你如何优化自己的代码?

你能解释一下JavaScript中的继承是如何工作的吗?

在什么时候你会使用'document.write()'?

    大多数生成的广告代码依旧使用'document.write()',虽然这种用法会让人很不爽。

请指出浏览器特性检测,特性推断和浏览器UA字符串嗅探的区别?

请尽可能详尽的解释AJAX的工作原理。

请解释JSONP的工作原理,以及它为什么不是真正的AJAX。

你使用过JavaScript的模板系统吗?

    如有使用做,请谈谈你都使用过那些类似库文件。比如Mustache.js,Handlebars等等。

请解释变量声明提升。

请描述下事件冒泡机制。

"attribute"和"property"的区别是什么?

为什么扩展JavaScript内置对象是个坏做法?

为什么扩展JavaScript内置对象是个好做法?

请指出document load和document ready的区别。(这是个问题的问题)

'=='和'==='有什么不同?

你如何获取浏览器URL中查询字符串中的参数。

请解释一下JavaScript的同源策略。

请解释一下事件代理。

请描述一下JavaScript的继承模式。

如何实现下列代码:

    [1,2,3,4,5].duplicator(); // [1,2,3,4,5,1,2,3,4,5] 

描述一种JavaScript memoization(避免重复运算)的策略。

什么是三元条件语句?

函数的参数元是什么?

什么是"use strict"?使用它的好处和坏处分别是什么?

JS代码示例:

    ~~3.14 

问题:上面的语句的返回值是什么? 答案:3

    "i'm a lasagna hog".split("").reverse().join(""); 

问题:上面的语句的返回值是什么? 答案:"goh angasal a m'i"

    ( window.foo || ( window.foo = "bar" ) ); 

问题:window.foo的值是什么? 答案:"bar" 只有window.foo为假时的才是上面答案,否则就是它本身的值。

    var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar); 

问题:上面两个alert的结果是什么? 答案: "Hello World" & ReferenceError: bar is not defined

    var foo = []; 
    foo.push(1); 
    foo.push(2); 

问题:foo.length的值是什么? 答案:'2'

    var foo = {}; 
    foo.bar = 'hello'; 

问题:foo.length的值是什么? **答案: undefined
jQuery相关问题

解释"chaining"。

解释"deferreds"。

你知道那些针对jQuery的优化方法。

请解释'.end()'的用途。

你如何给一个事件处理函数命名空间,为什么要这样做?

请说出你可以传递到jQuery方法的四种不同值。

    选择器(字符串),HTML(字符串),回调函数,HTML元素,对象,数组,元素数组,jQuery对象等。

什么是效果队列?

请指出'.get()','[]','eq()',的区别。

请指出'.bing()','.live()'和'.delegate()'的区别。

请指出'$'和'$.fn'的区别?或者说出'$.fn'的用户。

请优化下列选择器:

    $(".foo div#bar:eq(0)") 

CSS相关问题

描述css reset的作用和用途。

描述下浮动和它的工作原理。

清除浮动的方法有那些,分别适用于什么情形。

解释css sprites,如何使用。

你最喜欢的图片替换方法是什么,你如何选择使用。

讨论CSS hacks,条件引用或者其他。

如何为有功能限制的浏览器提供网页。

    你会使用那些技术和处理方法。

如何视觉隐藏网页内容,只让它们在屏幕阅读器中可用。

你使用过网格系统吗?如果使用过,你最喜欢哪种?

你使用过meidia queries(媒体查询)吗,或者移动网站相关的CSS布局。

你熟悉SVG样式的书写吗?

如何优化网页的打印样式。

在书写高效CSS文件时会有哪些问题需要考虑。

你使用CSS预处理器吗?(SASS,Compass,Stylus,LESS)

    如果使用,描述你的喜好。

你是否接触过使用非标准字体的设计?

    字体服务,Google Webfonts, Typekit,等等。

请解释浏览器是如何根据CSS选择器选择对应元素的。
可选的有趣问题

你编写过的最酷的代码是什么?其中你最自豪的是什么?

你知道HTML5的帮派标志吗?

你是否正在或曾经在一艘船上。(不懂这个幽默)

你使用的开发工具中,你最喜欢的部分是什么?

你有什么业余项目吗?是那种类型的?

解释cornify的重要性?(本题完全摸不到头脑)

在一张纸上,垂直写下ABCDE,然后不用任何代码,将他们到序排列。

    静静的看他们是否将纸反转。

海盗还是忍者?

    如果是两者的合体,并有恰当理由,可以加分。如果是僵尸猴子海盗加忍者加两分。(注:此题文化差异过大)

如果没有在Web开发,你会做什么?

卡门圣迭哥的隐藏处在哪里?

    提示:本题的答案永远是错的。

你最爱的IE特性是什么?

完句填空: Brendan Eich和Doug Crockford是JavaScript的________。

讨论:jQuery是牛逼的库还是最牛逼的库。

 

posted @ 2014-10-30 23:56  Suzuki.kakeru  阅读(855)  评论(0编辑  收藏  举报