首頁 後端開發 php教程 使用迭代器 遍历文件信息的详解_php技巧

使用迭代器 遍历文件信息的详解_php技巧

May 17, 2016 am 09:02 AM
資訊 迭代器

1.迭代文件的行
复制代码 代码如下:

        public static IEnumerable ReadLines(string fileName)
        {
            using (TextReader reader = File.OpenText(fileName))
            {
                string line;
                if ((line = reader.ReadLine()) != null)
                {
                    yield return line;
                }
            }
        }
        static void Main()
        {
            foreach (string line in Iterator.ReadLines(""))
            {
                Console.WriteLine(line);
            }
        }

2.使用迭代器和谓词对文件中的行进行筛选
复制代码 代码如下:

       public static IEnumerable where(IEnumerable source, Predicate predicate)
        {
            if (source == null || predicate == null)
            {
                throw new ArgumentNullException();
            }
            return WhereImplemeter(source, predicate);
        }
       private static IEnumerable WhereImplemeter(IEnumerable source, Predicate predicate)
        {
            foreach (T item in source)
            {
                if (predicate(item))
                {
                    yield return item;
                }
            }
        }
        static void Main()
        {
            IEnumerable lines = File.ReadAllLines(@"your file name");
            Predicate predicate = delegate(string line)
            {
                return line.StartsWith("using");
            };
            foreach (string str in where(lines, predicate))
            {
                Console.WriteLine(str);
            }

        }
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何在Microsoft Word中刪除作者和上次修改的訊息 如何在Microsoft Word中刪除作者和上次修改的訊息 Apr 15, 2023 am 11:43 AM

Microsoft Word文件在儲存時包含一些元資料。這些詳細資訊用於在文件上識別,例如建立時間、作者是誰、修改日期等。它還具有其他信息,例如字元數,字數,段落數等等。如果您可能想要刪除作者或上次修改的資訊或任何其他訊息,以便其他人不知道這些值,那麼有一種方法。在本文中,讓我們看看如何刪除文件的作者和上次修改的資訊。刪除微軟Word文件中的作者和最後修改的資訊步驟 1 –前往

C#中如何使用迭代器和遞歸演算法處理數據 C#中如何使用迭代器和遞歸演算法處理數據 Oct 08, 2023 pm 07:21 PM

C#中如何使用迭代器和遞歸演算法處理數據,需要具體程式碼範例在C#中,迭代器和遞歸演算法是兩種常用的數據處理方法。迭代器可以幫助我們遍歷集合中的元素,而遞歸演算法則能夠有效地處理複雜的問題。本文將詳細介紹如何使用迭代器和遞歸演算法來處理數據,並提供具體的程式碼範例。使用迭代器處理資料在C#中,我們可以使用迭代器來遍歷集合中的元素,而無需事先知道集合的大小。透過迭代器,我

取得 Windows 11 中 GPU 的方法及顯示卡詳細資料檢查 取得 Windows 11 中 GPU 的方法及顯示卡詳細資料檢查 Nov 07, 2023 am 11:21 AM

使用系統資訊按一下“開始”,然後輸入“系統資訊”。只需單擊程序,如下圖所示。在這裡,您可以找到大多數系統訊息,而顯示卡資訊也是您可以找到的一件事。在“系統資訊”程式中,展開“組件”,然後按一下“顯示”。讓程式收集所有必要的信息,一旦準備就緒,您就可以在系統上找到特定於顯示卡的名稱和其他資訊。即使您有多個顯示卡,您也可以從這裡找到與連接到電腦的專用和整合式顯示卡相關的大多數內容。使用裝置管理員Windows11就像大多數其他版本的Windows一樣,您也可以從裝置管理員中找到電腦上的顯示卡。按一下“開始”,然後

如何與NameDrop分享聯絡人詳細資訊:iOS 17的操作指南 如何與NameDrop分享聯絡人詳細資訊:iOS 17的操作指南 Sep 16, 2023 pm 06:09 PM

在iOS17中,有一個新的AirDrop功能,讓你透過觸摸兩部iPhone來與某人交換聯絡資訊。它被稱為NameDrop,這是它的工作原理。 NameDrop允許您簡單地將iPhone放在他們的iPhone附近以交換聯繫方式,而不是輸入新人的號碼來給他們打電話或發短信,以便他們擁有您的號碼。將兩個設備放在一起將自動彈出聯絡人共享介面。點擊彈出視窗會顯示一個人的聯絡資訊及其聯絡人海報(您可以自訂和編輯自己的照片,也是iOS17的新功能)。該畫面還包括「僅接收」或分享您自己的聯絡資訊作為回應的選項。

利用多光照資訊的單視角NeRF演算法S^3-NeRF,可恢復場景幾何與材質訊息 利用多光照資訊的單視角NeRF演算法S^3-NeRF,可恢復場景幾何與材質訊息 Apr 13, 2023 am 10:58 AM

目前影像 3D 重建工作通常採用恆定自然光照條件下從多個視點(multi-view)捕捉目標場景的多視圖立體重建方法(Multi-view Stereo)。然而,這些方法通常假設朗伯表面,並且難以恢復高頻細節。另一種場景重建方法是利用固定視點但在不同點光源下捕捉的影像。例如光度立體 (Photometric Stereo) 方法就採用這種設定並利用其 shading 資訊來重建非朗伯物體的表面細節。然而,現有的單視圖方法通常採用法線貼圖(normal map)或深度圖(depth map)來表徵可

NameDrop 如何在 iPhone 上運作(以及如何停用它) NameDrop 如何在 iPhone 上運作(以及如何停用它) Nov 30, 2023 am 11:53 AM

在iOS17中,有一個新的AirDrop功能,可讓您透過同時觸摸兩部iPhone來與某人交換聯絡資訊。它被稱為NameDrop,這是它的實際工作原理。 NameDrop無需輸入新人的號碼來給他們打電話或發短信,以便他們擁有您的號碼,您只需將iPhone靠近他們的iPhone即可交換聯絡方式。將兩台裝置放在一起會自動彈出聯絡人共用介面。點擊彈出視窗會顯示一個人的聯絡資訊和他們的聯絡人海報(您可以自訂和編輯的您自己的照片,也是iOS17的新功能)。該畫面還包括「僅接收」或分享您自己的聯絡資訊作為回應

Golang迭代器實作及使用詳解 Golang迭代器實作及使用詳解 Mar 17, 2024 pm 09:21 PM

Golang是一個快速、有效率的靜態編譯型語言,其簡潔的語法和強大的效能讓它在軟體開發領域備受青睞。在Golang中,迭代器(Iterator)是一種常用的設計模式,用於遍歷集合中的元素而無需暴露集合的內部結構。本文將詳細介紹如何在Golang中實作和使用迭代器,透過具體的程式碼範例幫助讀者更好地理解。 1.迭代器的定義在Golang中,迭代器通常由一個介面和實

PHP程式中的迭代器最佳實踐 PHP程式中的迭代器最佳實踐 Jun 06, 2023 am 08:05 AM

PHP程式中的迭代器最佳實踐迭代器在PHP程式設計中是一種非常常用的設計模式。透過實作迭代器接口,我們可以遍歷一個集合物件中的元素,而且還可以輕鬆的實作自己的迭代器物件。在PHP中,迭代器模式可以幫助我們更有效地操作陣列、列表等集合物件。在本文中,我們將介紹PHP程式中迭代器的最佳實踐,希望能幫助同樣在迭代器應用方面工作的PHP開發人員。一、使用標準迭代器接口P

See all articles