时间:2021-05-20
本文实例讲述了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:\Users\ZKK\Desktop\English.txt";bool res = PositionNotepad.PositionNotePad(path, "5");希望本文所述对大家的C#程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了C#实现DevGrid拖拽移动行的方法。分享给大家供大家参考。具体如下:完整实例代码点击此处本站下载。拖拽时带行截图效果实现代码如下://////
本文实例讲述了C#实现把dgv里的数据完整的复制到一张内存表的方法,相信对大家学习C#有一定的借鉴价值。具体实例代码如下://////方法实现把dgv里的数据完
本文实例讲述了php删除txt文件指定行及按行读取txt文档数据的方法。分享给大家供大家参考,具体如下:向txt文件循环写入值:$keys=range(1,99
本文实例讲述了C#从文件或标准输入设备读取指定行的方法。分享给大家供大家参考。具体如下:usingSystem;usingSystem.IO;usingSyst
本文实例讲述了C#拷贝文件简单实现方法。分享给大家供大家参考。具体分析如下:C#中拷贝文件可以先通过FileInfo指定文件,然后通过FileInfo的Copy