Ratkaistu: poista yli 10 päivää vanhemmat tiedostot

Viimeisin päivitys: 09/11/2023
Kirjoittaja: C SourceTrail

Toki voin luoda sen sinulle. Tästä se lähtee:

Vanhentuneiden tai tarpeettomien tiedostojen puhdistaminen on yleinen tarve ylläpitää minkä tahansa sovelluksen tai järjestelmän sujuvaa toimintaa. Kun hallitaan tuhansia tai miljoonia tiedostoja, tämän tehtävän automatisoinnista tulee ratkaisevan tärkeä. C#-kieltä hallitsevana kehittäjänä tämä kieli toimii työkaluna käsillä olevan ongelman ratkaisemiseen: kuinka poistaa yli 10 päivää vanhoja tiedostoja hakemistosta. C#:n tehokkaiden kirjastojen avulla voimme luoda ohjelman tämän saavuttamiseksi. Tämä opetusohjelma selittää, kuinka ratkaisu toteutetaan C#:ssa opastamalla koodin läpi vaihe vaiheelta.

C#:n System.IO-nimiavaruus

RFID lukija NFC lukija System.IO-nimiavaruus C#:ssa sisältää tyyppejä, jotka mahdollistavat tiedostojen ja tietovirtojen lukemisen ja kirjoittamisen, sekä tyyppejä, jotka tarjoavat perustiedosto- ja hakemistotuen. Käytämme tätä nimiavaruutta tiedostojen käsittelemiseen - poista, luo, lue tai kirjoita - tarpeen mukaan.

Ratkaisu vanhojen tiedostojen poistamiseen

System.IO-nimiavaruuden avulla voimme paikantaa tiedostot hakemistosta, arvioida niiden luomispäivämäärän ja poistaa ne, jotka ovat olleet siellä yli 10 päivää. DirectoryInfo- ja FileInfo-luokat ovat erityisen hyödyllisiä näiden toimintojen suorittamisessa.

using System;
käyttäen System.IO:ta;

luokkaohjelma
{
static void Main()
{
merkkijono polku = @”C:Oma hakemisto”;
DirectoryInfo hakemisto = uusi HakemistoInfo(polku);

foreach (FileInfo-tiedosto hakemistossa.GetFiles())
{
if (file.CreationTime < DateTime.Now.AddDays(-10)) file.Delete(); } } } [/koodi]

Säännöstön selitys

Alkaen "using"-käskyistä, System- ja System.IO-nimiavaruuksiin viitataan päästäkseen tarvittaviin luokkiin ja menetelmiin. Main() on ohjelman aloituspiste. Tämän menetelmän sisällä määritämme polkumuuttujan hakemistopolun tallentamiseksi ja luomme DirectoryInfo-luokan tälle hakemistolle.

Käytämme DirectoryInfo-objektissa GetFiles()-metodia hakeaksemme hakemistossa olevat tiedostot ja iteroidaksemme niitä käyttämällä foreach-silmukkaa. Jokaisen tiedoston kohdalla tarkistamme CreationTime-ominaisuuden. Jos tiedoston luontiaika on yli 10 päivää ennen nykyistä aikaleimaa, se poistetaan Poista-menetelmällä.

Ole tietoinen mahdollisista ongelmista

Vaikka tämä komentosarja on yksinkertainen, mahdollisia ajonaikaisia ​​​​ongelmia voi ilmetä. Ohjelma saattaa esimerkiksi kaatua, koska vaaditut oikeudet puuttuvat tiedostojen hallintaan määritetyssä hakemistossa. Siksi virheentarkistusmekanismien lisääminen tai komentosarjan suorittaminen järjestelmänvalvojana voi olla hyödyllistä.

Koska tiedostot ja hakemistot ovat olennainen osa monia sovelluksia, tällaiset toiminnot ovat melko yleisiä ohjelmistokehityksessä. Vastaavasti muiden tiedostotoimintojen automatisointia voidaan virtaviivaistaa C#:lla. Kun ymmärrät hyvin perusasiat, koodin säätäminen vastaamaan erityistarpeita voi olla yksinkertainen tehtävä.

Related viestiä: