手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#实现txt定位指定行完整实例
C#实现txt定位指定行完整实例
摘要:本文实例讲述了C#实现txt定位指定行的方法。分享给大家供大家参考。具体实现方法如下:usingSystem;usingSystem.Col...

本文实例讲述了C#实现txt定位指定行的方法。分享给大家供大家参考。具体实现方法如下:

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; using System.IO; using System.Runtime.InteropServices; namespace WfpApp { class PositionNotepad { [DllImport("User32.dll", EntryPoint = "FindWindow")] private static extern IntPtr FindWindow(string lpClassName, string lpWindowName); [DllImport("user32.dll")] static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpszClass, string lpszWindow); [DllImport("user32.dll")] static extern bool SetForegroundWindow(IntPtr hWnd); ///<summary> /// 定位到txt文件指定行 ///</summary> ///<param name="strFullName">文件路径</param> ///<param name="strRow">指定行</param> ///<returns>定位是否成功</returns> public static bool PositionNotePad(string strFullName, string strRow) { int iRow; int.TryParse(strRow, out iRow); if (iRow <= 0) { return false; } //查看当前文件是否已打开 IntPtr hwnd = FindWindow("Notepad", string.Format("{0} - 记事本", Path.GetFileName(strFullName))); if (hwnd.ToInt32() == 0) { Process p = Process.Start(@"notepad.exe", strFullName); //等一秒,等文本打开,焦点去到notepad p.WaitForInputIdle(1000); System.Windows.Forms.SendKeys.SendWait("{DOWN " + (iRow - 1) + "}"); System.Windows.Forms.SendKeys.SendWait("{HOME}"); //行首 System.Windows.Forms.SendKeys.SendWait("+{END}"); //选中当前行 return true; } else { hwnd = FindWindowEx(hwnd, IntPtr.Zero, "Edit", string.Empty); if (hwnd.ToInt32() == 0) return false; else { SetForegroundWindow(hwnd); System.Windows.Forms.SendKeys.SendWait("^{HOME}");//将光标定位到首行 System.Windows.Forms.SendKeys.SendWait("{DOWN " + (iRow - 1) + "}"); System.Windows.Forms.SendKeys.SendWait("{HOME}"); //行首 System.Windows.Forms.SendKeys.SendWait("+{END}"); //选中当前行 } } return true; } } }

调用:

string path = @"C:UsersZKKDesktopEnglish.txt"; bool res = PositionNotepad.PositionNotePad(path, "5");

希望本文所述对大家的C#程序设计有所帮助。

【C#实现txt定位指定行完整实例】相关文章:

用C#实现启动另一程序的方法实例

C# 撒列实现关键字过滤的实例

C#实现图片分割方法与代码

C#怎样才能实现窗体最小化到托盘呢?

C# DataTable 转换为 实体类对象实例

C#Js时间格式化问题简单实例

对指定的网页进行截图的效果 C#版

利用thrift实现js与C#通讯的实例代码

C#中将ListView中数据导出到Excel的实例方法

C#简单的加密类实例

精品推荐
分类导航