


Pengenalan
Mari kita cuba memahami program C# untuk mendapatkan nama fail dari laluan mutlak. Kami akan melihat penggunaan kaedah GetFileName di bawah kelas Fail yang digunakan untuk mendapatkan nama fail dan kaedah lain GetFileNameWithoutExtension yang akan mengembalikan nama fail rentetan laluan yang ditentukan tanpa sambungan. Untuk mendapatkan laluan relatif daripada dua laluan mutlak, kami akan menggunakan kelas Uri dalam C#. Kelas Uri menyediakan beberapa kaedah untuk bekerja dengan URI, termasuk MakeRelativeUri, yang akan kami gunakan dalam kod kami.
Fail ialah lokasi yang digunakan dalam C# untuk menyimpan beberapa maklumat. Koleksi fail dipanggil direktori. Dalam C#, fail tergolong dalam ruang nama System.IO, yang juga termasuk kelas lain untuk melaksanakan operasi pada fail. Path ialah kelas lain di bawah ruang nama yang sama. Terdapat dua jenis laluan, laluan mutlak dan laluan relatif. Laluan mutlak merangkumi semua maklumat yang diperlukan untuk mencari fail atau direktori pada sistem anda. Contoh laluan mutlak ialah C:\Program Files\Google Chrome\filename.exe.
Laluan relatif memberitahu kami laluan fail berbanding dengan direktori semasa yang sedang digunakan oleh pengguna. Pertimbangkan contoh serupa yang dinyatakan di atas, jika boleh laku utama terletak dalam C:\Program Files, laluan relatif ke filename.exe ialah Google Chrome filename.exe.
Kaedah GetFileName
Ini ialah kaedah di bawah kelas fail dalam C#, digunakan untuk mendapatkan nama fail daripada laluan mutlak. path.GetFileName digunakan untuk melaksanakan operasi ini. Ia mengambil laluan mutlak sebagai input dan mengembalikan nama fail dan sambungan laluan yang ditentukan. Laluan mutlak yang digunakan sebagai input adalah dalam bentuk rentetan.
Tatabahasa
public static string GetFileName(string path)
Laluan di sini ialah rentetan yang kita perlukan untuk mendapatkan nama fail.
Dalam contoh di atas, GetFileName ialah kaedah kelas laluan. Kaedah ini mengembalikan aksara selepas pemisah aksara direktori terakhir dalam nama laluan. Jika ia tidak wujud, maka ia akan mengembalikan nilai NULL. Ia juga mengembalikan nilai NULL jika aksara terakhir laluan ialah direktori atau pemisah volum.
Begitu juga, jika laluan adalah null, maka ia akan mengembalikan nilai NULL.
Jika nama fail ialah "C:mydirfilename.exe", maka hasil output ialah filename.exeAlgoritma
Algoritma di bawah akan memberikan proses langkah demi langkah untuk mendapatkan nama fail menggunakan kaedah File.GetFileName().
Sebagai contoh, jika kita perlu mencari nama fail, kita boleh menggunakan algoritma berikut untuk memahami:
Langkah 1−Buat rentetan untuk menyimpan nama laluan fail Ingat bahawa ini adalah laluan mutlak.
Langkah 2 − Buat nama fail rentetan pada mulanya kosong.
Langkah 3 − Kami akan menyimpan output kaedah GetFileName dalam nama fail rentetan.
Langkah 4 − Memandangkan nama fail dalam kod di atas ialah "myfile", outputnya adalah sama.
Langkah 5 − Jika dalam apa jua keadaan laluan adalah batal, output yang dikembalikan juga akan menjadi NULL.
Langkah 6 − Dengan menggunakan kaedah GetFileName, kita boleh mengembalikan nama fail daripada laluan mutlak.
Contoh
using System; using System.IO; using System.Text; class FileName { static void Main(string[] args) { //declaring the string path. string path = "E://Jinku Hu//Starting Over//Csharp//myfile.md"; //declaring the string filename. string filename = null; //we will be storing the value in the filename variable. filename = Path.GetFileName(path); Console.WriteLine(filename); Console.ReadLine(); } }
Output
myfile.md
Kerumitan masa
Dalam kod yang disebutkan di atas, kita dapat melihat bahawa tiada gelung atau gelung bersarang di dalam fungsi utama, jadi kerumitan masa hanyalah O(1).
GetFileNameWithoutExtension kaedah
Kaedah yang dijelaskan sebelum ini ialah menggunakan kaedah GetFileName untuk mengembalikan nama fail. Sekarang kita akan melihat bagaimana untuk mengembalikan nama fail tanpa sambungan. Dengan mengandaikan nama laluan ialah "C:Program FilesGoogle Chromefilename.exe", maka output yang dikembalikan ialah "filename". Ia menerima laluan mutlak sebagai input dan mengembalikan nama fail sebagai output. Laluan mutlak yang dimasukkan adalah dalam bentuk rentetan. Sintaks - "rentetan statik awam GetFileName(laluan rentetan)", dengan laluan ialah rentetan yang kita mahu dapatkan nama fail tanpa sambungan.
Dalam contoh di atas, GetFileName ialah kaedah kelas laluan. Kaedah ini akan mengembalikan aksara selepas pemisah aksara direktori terakhir dalam nama laluan, tanpa sambungan. Jika ia tidak wujud maka ia akan mengembalikan nilai NULL. Ia juga mengembalikan nilai NULL jika aksara terakhir laluan ialah direktori atau pemisah volum.
算法
在此算法中,我们将了解使用 GetFileNameWithoutExtension 方法返回不带扩展名的文件名的分步方法。
第 1 步 − 创建一个字符串来存储绝对路径的名称。
步骤2 − 创建另一个名为filename的字符串,该字符串将作为输出返回。
第三步 − 字符串变量filename将以null作为其初始值。
第四步 − 使用GetFileNameWithoutExtension方法生成的输出将存储在一个字符串filename中。
步骤 5 − 如果文件为空,则输出也将相同。
第 6 步 − 因此我们可以使用 GetFileNameWithoutExtension 方法返回不带扩展名的文件名。
示例
using System; using System.IO; using System.Text; class FileName { static void Main(string[] args) { //declare the string path first. string path = "C:\Program Files\Google Chrome\filename.exe"; //declare the string filename and store null initially. string filename = null; filename = Path.GetFileNameWithoutExtension(path); //store the answer in the variable filename. Console.WriteLine(filename); Console.ReadLine(); } }
输出
filename.exe
时间复杂度
在上述代码中,我们可以观察到只使用了一种直接生成输出并将其存储在相应变量中的方法。没有使用任何循环或任何类型的复杂递归函数。这仅仅构成了时间复杂度为O(1)。
结论
在本文中,我们广泛讨论了使用GetFileName方法从绝对路径中获取带有扩展名的文件名,以及使用GetFileNameWithoutExtension方法获取不带扩展名的文件名的C#程序。
我们希望本文能够帮助您增强有关 C# 的知识。
Atas ialah kandungan terperinci Program C# untuk mendapatkan nama fail dari laluan mutlak. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

C# digunakan secara meluas dalam aplikasi peringkat perusahaan, pembangunan permainan, aplikasi mudah alih dan pembangunan web. 1) Dalam aplikasi peringkat perusahaan, C# sering digunakan untuk ASP.Netcore untuk membangunkan WebAPI. 2) Dalam pembangunan permainan, C# digabungkan dengan enjin Perpaduan untuk merealisasikan kawalan peranan dan fungsi lain. 3) C# menyokong polimorfisme dan pengaturcaraan tak segerak untuk meningkatkan fleksibiliti kod dan prestasi aplikasi.

C# dan .NET sesuai untuk pembangunan web, desktop dan mudah alih. 1) Dalam pembangunan web, ASP.Netcore menyokong pembangunan silang platform. 2) Pembangunan desktop menggunakan WPF dan WinForms, yang sesuai untuk keperluan yang berbeza. 3) Pembangunan mudah alih menyedari aplikasi silang platform melalui Xamarin.

Ekosistem C#.NET menyediakan rangka kerja dan perpustakaan yang kaya untuk membantu pemaju membina aplikasi dengan cekap. 1.asp.NetCore digunakan untuk membina aplikasi web berprestasi tinggi, 2.EntityFrameworkCore digunakan untuk operasi pangkalan data. Dengan memahami penggunaan dan amalan terbaik alat -alat ini, pemaju dapat meningkatkan kualiti dan prestasi aplikasi mereka.

Bagaimana cara menggunakan aplikasi C# .net ke Azure atau AWS? Jawapannya ialah menggunakan Azureappservice dan AwselasticBeansTalk. 1. Pada Azure, mengautomasikan penggunaan menggunakan Azureappservice dan Azurepipelines. 2. Pada AWS, gunakan Amazon ElasticBeansTalk dan AWSLambda untuk melaksanakan penempatan dan pengiraan tanpa pelayan.

Gabungan C# dan .NET menyediakan pemaju dengan persekitaran pengaturcaraan yang kuat. 1) C# menyokong polimorfisme dan pengaturcaraan asynchronous, 2) .NET menyediakan keupayaan silang platform dan mekanisme pemprosesan serentak, yang menjadikannya digunakan secara meluas dalam pembangunan aplikasi desktop, web dan mudah alih.

.NetFramework adalah kerangka perisian, dan C# adalah bahasa pengaturcaraan. 1..NetFramework menyediakan perpustakaan dan perkhidmatan, sokongan desktop, web dan aplikasi mudah alih. 2.C# direka untuk .NetFramework dan menyokong fungsi pengaturcaraan moden. 3..NetFramework Menguruskan pelaksanaan kod melalui CLR, dan kod C# disusun ke IL dan dikendalikan oleh CLR. 4. Gunakan .NetFramework untuk membangunkan aplikasi dengan cepat, dan C# menyediakan fungsi lanjutan seperti LINQ. 5. Kesilapan umum termasuk penukaran jenis dan kebuntuan pengaturcaraan tak segerak. Alat VisualStudio diperlukan untuk debugging.

C# adalah bahasa pengaturcaraan yang berorientasikan objek yang dibangunkan oleh Microsoft, dan .NET adalah rangka kerja pembangunan yang disediakan oleh Microsoft. C# menggabungkan prestasi C dan kesederhanaan Java, dan sesuai untuk membina pelbagai aplikasi. Rangka kerja .NET menyokong pelbagai bahasa, menyediakan mekanisme pengumpulan sampah, dan memudahkan pengurusan memori.

C# dan .NET Runtime bekerjasama rapat untuk memperkasakan pemaju untuk keupayaan pembangunan yang cekap, kuat dan silang platform. 1) C# adalah bahasa pengaturcaraan yang berorientasikan objek dan berorientasikan objek yang direka untuk mengintegrasikan dengan lancar dengan rangka .NET. 2) Runtime NET menguruskan pelaksanaan kod C#, menyediakan pengumpulan sampah, keselamatan jenis dan perkhidmatan lain, dan memastikan operasi yang cekap dan silang platform.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma
