透かしなしで本番環境でテストしてください。
必要な場所で動作します。
30日間、完全に機能する製品をご利用いただけます。
数分で稼働させることができます。
製品トライアル期間中にサポートエンジニアリングチームへの完全アクセス
IList
の紹介IList
は、.NETフレームワークのコレクションネームスペースの一部です。 それは、インデックスを用いて個別にアクセスできるオブジェクトのコレクションの設計図を提供する、ジェネリックではないコレクションインターフェースです。 配列とは異なり、IList(アイリスト)
必要に応じてコレクションから要素を追加または削除できるため、動的な数のオブジェクト値要素を許可します。 それは、.NET Frameworkのすべての非ジェネリックリストの基底インターフェイスとして機能し、配列よりも柔軟な方法でオブジェクトのコレクションを管理する手段を提供します。 IList`インターフェースとIronPDF C# PDFライブラリこのチュートリアルで。
IList
インターフェースの理解public interface IList
の宣言は、.NET Framework の Collections 名前空間によって指定される IList
契約に準拠したカスタム コレクションを C# で作成するための基本的な部分です。 IList
には、コレクション内の要素にアクセスし、要素の数を数え、要素の追加、挿入、または削除によってコレクションを変更するためのプロパティとメソッドが含まれています。 IList
インターフェースで定義されている主要なプロパティとメソッドの一部を以下に示します:
IsFixedSize
や IsReadOnly
のようなプロパティは、コレクションが固定サイズか、読み取り専用かどうかをそれぞれ示します。コレクション内の要素を変更するために、Add
、void Insert
、Remove
、および RemoveAt
のようなメソッドが使用されます。 要素の追加、挿入、削除が可能です。
IndexOf
メソッドは要素を見つけるためのもので、Item
プロパティは(C#でのインデクサ)インデックスに基づいて要素の取得および設定を可能にします。
IList
の実用的な使用法IList
の動作を示すために、シンプルな例を作成してみましょう。 この一般的なバージョンの例では、IList
を宣言し、アイテムを追加し、その内容を反復処理する方法を示します。
IList
を作成および変更するまず、IList
を宣言して項目を追加する方法を見てみましょう:
using System;
using System.Collections;
class Program
{
void Main(string[] args)
{
// Creating an IList instance
IList myIList = new ArrayList();
// Adding elements to the IList
myIList.Add("Hello");
myIList.Add(10);
myIList.Add(new object());
// Displaying the number of values in the IList interface using count property
Console.WriteLine($"Number of elements: {myIList.Count}");
// Access Elements
foreach (var element in myIList)
{
Console.WriteLine(element);
}
}
}
using System;
using System.Collections;
class Program
{
void Main(string[] args)
{
// Creating an IList instance
IList myIList = new ArrayList();
// Adding elements to the IList
myIList.Add("Hello");
myIList.Add(10);
myIList.Add(new object());
// Displaying the number of values in the IList interface using count property
Console.WriteLine($"Number of elements: {myIList.Count}");
// Access Elements
foreach (var element in myIList)
{
Console.WriteLine(element);
}
}
}
上記の例では、IList
のインスタンスを IList
を実装するクラスである ArrayList
を使って作成しました。 IList
が任意のオブジェクトを保持できることを示すため、さまざまな種類のオブジェクトを追加しました。 最後に、コレクションを反復処理し、各要素を出力しました。
要素にインデックスでアクセスし、修正することは IList
の重要な機能です。 次の IList
の例は、どのようにそれを行うことができるかを示しています:
// Accessing an element by index
object value = myIList[1];
Console.WriteLine($"Element at index 1: {value}");
// Modifying an element by index
myIList[1] = 20;
Console.WriteLine($"Modified element at index 1: {myIList[1]}");
// Accessing an element by index
object value = myIList[1];
Console.WriteLine($"Element at index 1: {value}");
// Modifying an element by index
myIList[1] = 20;
Console.WriteLine($"Modified element at index 1: {myIList[1]}");
IList
の実装カスタマイズされたコレクションが必要な場合があり、その場合 IList
を継承することが求められます。 これにより、要素の格納、アクセス、および変更方法に対するより多くの制御が可能になります。 以下は、IList
を実装するシンプルなカスタムコレクションの例です:
public class CustomCollection : IList
{
private ArrayList _innerList = new ArrayList();
public object this[int index] { get => _innerList[index]; set => _innerList[index] = value; }
public bool IsFixedSize => _innerList.IsFixedSize;
public bool IsReadOnly => _innerList.IsReadOnly;
public int Count => _innerList.Count;
public bool IsSynchronized => _innerList.IsSynchronized;
public object SyncRoot => _innerList.SyncRoot;
// int add
public int Add(object value)
{
return _innerList.Add(value);
}
public void Clear()
{
_innerList.Clear();
}
public bool Contains(object value)
{
return _innerList.Contains(value);
}
public int IndexOf(object value)
{
return _innerList.IndexOf(value);
}
public void Insert(int index, object value)
{
_innerList.Insert(index, value);
}
public void Remove(object value)
{
_innerList.Remove(value);
}
public void RemoveAt(int index)
{
_innerList.RemoveAt(index);
}
public void CopyTo(Array array, int index)
{
_innerList.CopyTo(array, index);
}
public IEnumerator GetEnumerator()
{
return _innerList.GetEnumerator();
}
}
public class CustomCollection : IList
{
private ArrayList _innerList = new ArrayList();
public object this[int index] { get => _innerList[index]; set => _innerList[index] = value; }
public bool IsFixedSize => _innerList.IsFixedSize;
public bool IsReadOnly => _innerList.IsReadOnly;
public int Count => _innerList.Count;
public bool IsSynchronized => _innerList.IsSynchronized;
public object SyncRoot => _innerList.SyncRoot;
// int add
public int Add(object value)
{
return _innerList.Add(value);
}
public void Clear()
{
_innerList.Clear();
}
public bool Contains(object value)
{
return _innerList.Contains(value);
}
public int IndexOf(object value)
{
return _innerList.IndexOf(value);
}
public void Insert(int index, object value)
{
_innerList.Insert(index, value);
}
public void Remove(object value)
{
_innerList.Remove(value);
}
public void RemoveAt(int index)
{
_innerList.RemoveAt(index);
}
public void CopyTo(Array array, int index)
{
_innerList.CopyTo(array, index);
}
public IEnumerator GetEnumerator()
{
return _innerList.GetEnumerator();
}
}
この CustomCollection
クラスは ArrayList
をカプセル化しており、このクラス自体が IList
を実装しています。 私たちの CustomCollection
は基礎となる ArrayList
に呼び出しを転送し、IList
を実装する他のコレクションと同様に動作することを可能にします。 この例は、インデックスでアクセスでき、修正可能なコレクションの作成を示しています。(追加、挿入、または削除された項目)また、IList
を実装する標準の .NET コレクションと同様に、反復処理を行うことができます。
IList
の高度な操作基本的な追加、削除、およびアクセス操作を超えて、IList
はより複雑な操作とクエリを可能にします。 たとえば、コレクションに特定のオブジェクトが含まれているかを確認したり、コレクション内のオブジェクトのインデックスを見つけることは、特定のアプリケーションにとって重要な操作となる場合があります。
// Check if the IList contains a specific object
bool contains = myIList.Contains(10); // Assuming 10 was added previously
Console.WriteLine($"Contains 10: {contains}");
// Find the index of a specific object
int index = myIList.IndexOf(10);
Console.WriteLine($"Index of 10: {index}");
// Check if the IList contains a specific object
bool contains = myIList.Contains(10); // Assuming 10 was added previously
Console.WriteLine($"Contains 10: {contains}");
// Find the index of a specific object
int index = myIList.IndexOf(10);
Console.WriteLine($"Index of 10: {index}");
これらの操作は、特定のアイテムの存在や位置をコレクション全体を繰り返すことなく確認する必要がある場合に、特に役立ちます。
IronPDFは、.NETアプリケーション内で直接PDFドキュメントの作成および操作を可能にする、.NET開発者向けのPDFライブラリです。 それは変換をサポートしますHTMLからPDFドキュメントへ画像、ウェブページをPDFに変換。 開発者はこのライブラリを使用して、簡単にアプリケーションにPDF機能を追加できます。 IronPDFにはPDFファイルの編集、結合、分割機能も含まれており、PDFの操作を包括的にコントロールすることができます。
IronPDFは、以下に優れていますHTMLからPDF変換時に、元のレイアウトとスタイルを正確に保持します。 それは、レポート、請求書、およびドキュメントなどのWebベースのコンテンツからPDFを作成するのに最適です。 IronPDFはHTMLファイル、URL、生のHTML文字列をサポートしており、簡単に高品質なPDFドキュメントを生成します。
using IronPdf;
class Program
{
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// 1. Convert HTML String to PDF
var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");
// 2. Convert HTML File to PDF
var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");
// 3. Convert URL to PDF
var url = "http://ironpdf.com"; // Specify the URL
var pdfFromUrl = renderer.RenderUrlAsPdf(url);
pdfFromUrl.SaveAs("URLToPDF.pdf");
}
}
using IronPdf;
class Program
{
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// 1. Convert HTML String to PDF
var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");
// 2. Convert HTML File to PDF
var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");
// 3. Convert URL to PDF
var url = "http://ironpdf.com"; // Specify the URL
var pdfFromUrl = renderer.RenderUrlAsPdf(url);
pdfFromUrl.SaveAs("URLToPDF.pdf");
}
}
以下は、IronPDFとIList
インターフェースを使用して文字列のリストからシンプルなPDFドキュメントを生成する簡単な例です。
using IronPdf;
using System.Collections.Generic;
public class PDFGenerator
{
public static void GeneratePDFFromList(IList<string> dataList)
{
// Initialize the HtmlToPdf renderer
var renderer = new ChromePdfRenderer();
// Start building HTML content from the dataList
var htmlContent = "<h1>My Data List</h1><ul>";
foreach (var item in dataList)
{
htmlContent += $"<li>{item}</li>";
}
htmlContent += "</ul>";
// Convert HTML string to PDF
var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
// Save the PDF to a file
pdfDocument.SaveAs("DataList.pdf");
}
}
// Example usage
class Program
{
static void Main(string[] args)
{
License.LicenseKey = "License-Key";
IList<string> myDataList = new List<string> { "Apple", "Banana", "Cherry" };
PDFGenerator.GeneratePDFFromList(myDataList);
}
}
using IronPdf;
using System.Collections.Generic;
public class PDFGenerator
{
public static void GeneratePDFFromList(IList<string> dataList)
{
// Initialize the HtmlToPdf renderer
var renderer = new ChromePdfRenderer();
// Start building HTML content from the dataList
var htmlContent = "<h1>My Data List</h1><ul>";
foreach (var item in dataList)
{
htmlContent += $"<li>{item}</li>";
}
htmlContent += "</ul>";
// Convert HTML string to PDF
var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
// Save the PDF to a file
pdfDocument.SaveAs("DataList.pdf");
}
}
// Example usage
class Program
{
static void Main(string[] args)
{
License.LicenseKey = "License-Key";
IList<string> myDataList = new List<string> { "Apple", "Banana", "Cherry" };
PDFGenerator.GeneratePDFFromList(myDataList);
}
}
この例では、IList<string>
はフルーツの名前のコレクションを保存するために使用されます。 次に GeneratePDFFromList
メソッドがこのリストを繰り返し処理し、順序なしリストの各項目を含む HTML 文字列を作成します。IronPDF の ChromePdfRenderer
はこの HTML コンテンツを PDF ドキュメントに変換し、それをファイルに保存する。
この初心者向けガイドは、C#のIList
の基本と実用的な使用法について説明することを目的としています。 サンプルにはシンプルな使用方法からカスタム実装まであり、IList
がC#開発者のツールキットにおいて強力なツールであることが明白です。 データのコレクションを操作する場合でも、独自のコレクション型を構築する場合でも、IList
は効果的なソフトウェア開発に必要な機能と柔軟性を提供します。 IronPDFはPDFライブラリの無料トライアル興味のあるユーザーのために、ライセンスは$749から取得可能です。