Munkavégzés elválasztott értékekkel (DSV) – szerkeszthető dokumentum létrehozása

Ha .NET fejlesztő vagy, akinek create editable document objektumokat kell létrehoznia elválasztott értékekből (DSV), például CSV vagy TSV, jó helyen jár. Az első 100 szóban elmagyarázzuk, miért a GroupDocs.Editor for .NET a legmegbízhatóbb módja a read delimited text C# elolvasásának, szerkesztésének, majd vissza mentésének formázás elvesztése nélkül. Egy teljes, másolás‑beillesztésre kész munkafolyamatot kapsz, amely természetesen illeszkedik bármely Visual Studio megoldáshoz.

Gyors válaszok

  • Melyik könyvtár kezeli a CSV szerkesztését a legjobban .NET‑ben? GroupDocs.Editor for .NET.
  • Szerkeszthetek nagy CSV fájlokat Visual Studio‑ban? Igen – az API adatfolyamot használ, és elkerüli a teljes fájl memóriába töltését.
  • Szükség van licencre a termelésben való használathoz? Kereskedelmi licenc szükséges; ingyenes próba elérhető.
  • Milyen formátumokba exportálhatok a szerkesztés után? CSV, TSV és Excel‑kompatibilis táblázatformátumok.
  • Az API kompatibilis a .NET 6+ verzióval? Teljesen – támogatja a .NET Framework 4.5+, .NET Core 3.1+, .NET 5 és .NET 6 verziókat.

Mi az a „create editable document” a GroupDocs.Editor kontextusában?

Create editable document azt jelenti, hogy egy EditableDocument példányt hozunk létre, amely a forrásfájl (CSV, TSV stb.) memóriában tárolt, módosítható verzióját képviseli. Ez az objektum lehetővé teszi a tartalom olvasását, módosítását és újbóli mentését ugyanazzal az API‑val. Metódusokat biztosít a dokumentum szövegének lekérésére, változtatások alkalmazására és különböző formátumokba való mentésre, biztosítva, hogy az oszlopok igazítása és az idézőjelek megmaradjanak.

Miért használjuk a GroupDocs.Editor‑t DSV kezeléshez?

A GroupDocs.Editor több mint 50 bemeneti és kimeneti formátumot támogat, köztük a CSV‑t, TSV‑t és Excel‑kompatibilis táblázatokat, miközben a memóriahasználatot 10 MB alatt tartja akár 500 MB‑os fájlok esetén is. Automatikusan megőrzi az oszlopok igazítását, az idézőjelek szabályait és az egyedi kódolásokat, ezáltal kiküszöbölve a manuális feldolgozási logikára való szükségletet.

Előfeltételek

  • Visual Studio (bármely friss kiadás) – közvetlenül az IDE‑ben fejleszthetsz és hibakereshetsz.
  • GroupDocs.Editor for .NET – töltsd le a legújabb csomagot itt.
  • Alapvető C# ismeretek – a bemutató feltételezi, hogy tudsz konzol‑ vagy ASP.NET‑projektet létrehozni és NuGet csomagokat hozzáadni.

Névterek importálása

Az Editor, EditableDocument és a kapcsolódó opcióosztályok a GroupDocs.Editor névtérben találhatók.

A DelimitedTextEditOptions osztály a belépési pont a határoló (vessző, tabulátor stb.) és egyéb elemzési szabályok meghatározásához.

using System.Collections.Generic;
using System.IO;
using GroupDocs.Editor.Formats;
using GroupDocs.Editor.HtmlCss.Resources;
using GroupDocs.Editor.Options;

Hogyan hozzunk létre szerkeszthető dokumentumot CSV fájlból?

Töltsd be a forrás CSV‑t az Editor‑rel, majd hívd meg az Edit metódust, egy DelimitedTextEditOptions példányt átadva, amely vessző határolót ad meg. A metódus egy EditableDocument‑et ad vissza, amelyet memóriában manipulálhatsz. Ez a kétlépéses minta – betöltés → szerkesztés – lefedi a read delimited text C# forgatókönyveket, és garantálja, hogy az eredeti fájlstruktúra megmaradjon.

1. lépés: Szerezzünk útvonalat a bemeneti DSV fájlhoz

Először meg kell adnod a forrás DSV fájl abszolút vagy relatív útvonalát. Bemutatásként egy egyszerű CSV‑t használunk, amely a projekt Data mappájában található.

string inputFilePath = "Your Sample Document";

2. lépés: Hozzunk létre egy Editor példányt

Az Editor a központi osztály, amely a betöltést, szerkesztést és mentést koordinálja. Egy FileInfo objektummal példányosítva teljes irányítást kapsz a fájl életciklusa felett.

using (Editor editor = new Editor(inputFilePath))
{

3. lépés: Hozzunk létre DSV szerkesztési beállításokat

A DelimitedTextEditOptions megmondja az editornak, hogyan értelmezze a fájlt. Beállíthatod a határolót, hogy az első sor tartalmazza‑e a fejléceket, valamint a karakterkódolást.

    Options.DelimitedTextEditOptions editOptions = new DelimitedTextEditOptions(",");
    editOptions.ConvertDateTimeData = false;
    editOptions.ConvertNumericData = true;
    editOptions.TreatConsecutiveDelimitersAsOne = true;

4. lépés: Hozzunk létre EditableDocument példányt

Az EditableDocument a forrásfájl memóriában tárolt, módosítható verzióját képviseli. Az Editor.Edit meghívása a beállításokkal egy EditableDocument‑et ad vissza. Ez az objektum a fájl szövegét egy módosítható stringben tárolja, készen állva bármely parse delimited values C# műveletre.

    EditableDocument beforeEdit = editor.Edit(editOptions);

5. lépés: Szerkesszük a dokumentum tartalmát

A GetDocumentText() visszaadja a szerkeszthető dokumentum aktuális szövegét stringként. Szerezd meg az eredeti szöveget a EditableDocument.GetDocumentText()‑vel, végezd el a módosításokat (pl. egy oszlopérték cseréje), és tárold az eredményt egy új stringben. Itt tudod edit CSV .NET‑et használni anélkül, hogy alacsony szintű fájlfolyamokat érintenél.

    string originalTextContent = beforeEdit.GetContent();
    string updatedTextContent = originalTextContent.Replace("SsangYong", "Chevrolet").Replace("Kyron", "Camaro");
    List<IHtmlResource> allResources = beforeEdit.AllResources;

6. lépés: Hozzunk létre egy EditableDocument‑ot frissített tartalommal

A módosított stringet csomagold vissza egy EditableDocument‑ba. Ez a lépés véglegesíti a változtatásokat, és előkészíti az objektumot a bármely támogatott formátumba való mentéshez.

    EditableDocument afterEdit = EditableDocument.FromMarkup(updatedTextContent, allResources);

7. lépés: Hozzunk létre CSV mentési beállításokat

A DelimitedTextSaveOptions határozza meg, hogyan írjuk vissza a szerkesztett tartalmat egy CSV fájlba. Amikor készen állsz a változások mentésére, konfiguráld a DelimitedTextSaveOptions‑t. Megadhatod ugyanazt a határolót, egy másikat, vagy akár megváltoztathatod a sorvége stílusát is.

    Options.DelimitedTextSaveOptions csvSaveOptions = new DelimitedTextSaveOptions(",");
    csvSaveOptions.Encoding = System.Text.Encoding.UTF8;

8. lépés: Hozzunk létre TSV mentési beállításokat

Ha tabulátorral elválasztott változatra van szükséged, egyszerűen állítsd a határolót \t‑re. Ugyanaz a EditableDocument többször is menthető különböző beállításokkal.

    Options.DelimitedTextSaveOptions tsvSaveOptions = new DelimitedTextSaveOptions("\t");
    tsvSaveOptions.Encoding = System.Text.Encoding.UTF8;

9. lépés: Hozzunk létre táblázat mentési beállításokat

A SpreadsheetSaveOptions beállítja a dokumentum exportálását Excel‑kompatibilis formátumokba, például .xlsx‑be. A GroupDocs.Editor lehetővé teszi a szerkesztett adatok Excel‑kompatibilis formátumba (.xlsx) való exportálását is. A SpreadsheetSaveOptions osztály automatikusan kezeli az oszloptípusokat, képleteket és a cellastílusokat.

    Options.SpreadsheetSaveOptions cellsSaveOptions = new SpreadsheetSaveOptions(SpreadsheetFormats.Xlsm);

10. lépés: Készítsük elő a mentési útvonalakat

Határozd meg a különböző formátumokhoz tartozó kimeneti útvonalakat. A világos elnevezési konvenciók (pl. output.csv, output.tsv, output.xlsx) segítenek a projekt rendezett tartásában.

    string outputCsvPath = Path.Combine(Constants.GetOutputDirectoryPath(inputFilePath), Path.GetFileNameWithoutExtension(inputFilePath) + ".csv");
    string outputTsvPath = Path.Combine(Constants.GetOutputDirectoryPath(inputFilePath), Path.GetFileNameWithoutExtension(inputFilePath) + ".tsv");
    string outputCellsPath = Path.Combine(Constants.GetOutputDirectoryPath(inputFilePath), Path.GetFileNameWithoutExtension(inputFilePath) + ".xlsm");

11. lépés: Mentsük a szerkesztett dokumentumot

A Save() a megadott mentési beállításokkal írja a dokumentumot a lemezre. Hívd meg az EditableDocument.Save‑t a megfelelő opciókkal minden célformátumhoz. Az API közvetlenül a lemezre írja a fájlt, megőrizve az eredeti kódolást, hacsak nem módosítod azt.

    editor.Save(afterEdit, outputCsvPath, csvSaveOptions);
    editor.Save(afterEdit, outputTsvPath, tsvSaveOptions);
    editor.Save(afterEdit, outputCellsPath, cellsSaveOptions);

12. lépés: Az EditableDocument példányok felszabadítása

Mind az Editor, mind az EditableDocument implementálja az IDisposable interfészt. A felszabadításuk felszabadítja a fájlkezelőket és a nem kezelt erőforrásokat, ami kulcsfontosságú sok fájl batch feldolgozásakor.

    beforeEdit.Dispose();
    afterEdit.Dispose();
}
System.Console.WriteLine("WorkingWithDsv routine has successfully finished");

Gyakori problémák és megoldások

ProblémaMiért fordul előMegoldás
Váratlan extra idézőjelekAz alapértelmezett CSV elemző beágyazott vesszőket is elválasztóként kezelhet.Állítsa be EscapeMode = EscapeMode.DoubleQuote a DelimitedTextEditOptions‑ban.
Nagy fájl memóriaugrás500 MB fájl betöltése streaming nélkül.Használja az Editor.Load‑t LoadOptions‑szel, amely engedélyezi a lusta betöltést.
Kódolási eltérésA forrásfájl UTF‑16‑ot használ, de a beállítások alapértelmezés szerint UTF‑8-at.Kifejezetten állítsa be Encoding = Encoding.Unicode a mentési beállításokban.

Gyakran feltett kérdések

Q: Használhatom a GroupDocs.Editor for .NET‑et nagy CSV fájlok szerkesztésére?
A: Igen, az API adatfolyamot használ, és 1 GB‑nál nagyobb fájlokat is kezel anélkül, hogy a teljes dokumentumot memóriába töltené.

Q: A GroupDocs.Editor for .NET támogat más DSV formátumokat is a CSV‑n és TSV‑n kívül?
A: Teljesen – bármely egykarakteres határoló (pl. |, ;) támogatott, amennyiben a DelimitedTextEditOptions‑ban megadod.

Q: Lehet testre szabni a kódolást DSV fájlok mentésekor?
A: Igen, beállíthatod az Encoding tulajdonságot a DelimitedTextSaveOptions‑ban UTF‑8, UTF‑16, ISO‑8859‑1 vagy bármely .NET Encoding értékre, amelyre szükséged van.

Q: Átalakíthatom-e a CSV fájlt Excel táblázattá a GroupDocs.Editor for .NET‑el?
A: Igen – a szerkesztés után egyszerűen használd a SpreadsheetSaveOptions‑t a tartalom .xlsx munkafüzetként való exportálásához.

Q: Hol találok további dokumentációt a GroupDocs.Editor for .NET‑ről?
A: Részletes API‑referenciák és kódminták érhetők el itt.


Utolsó frissítés: 2026-06-06
Tesztelve ezzel: GroupDocs.Editor 23.10 for .NET
Szerző: GroupDocs

Kapcsolódó oktatóanyagok