简体   繁体   中英

C# Substring return wrong value

var newEncodedFiles = @"C:\Users\wande\OneDrive\Documentos\Visual Studio 2019\Spira\Spira\bin\Debug\netcoreapp5.0\Translated\master\new_uspc\menu\macrodic.dcp";
var newPath = newEncodedFiles.Substring(0, dcpFile.LastIndexOf('.'));

This code returns:

C:\Users\wande\OneDrive\Documentos\Visual Studio 2019\Spira\Spira\bin\Debug\netcoreapp5.0\Translated\master\new_uspc\menu\macro

I am trying to remove file extension to get:

C:\Users\wande\OneDrive\Documentos\Visual Studio 2019\Spira\Spira\bin\Debug\netcoreapp5.0\Translated\master\new_uspc\menu\macrodic

Its working as expected for me in .net core 3.1 console application.

var newEncodedFiles = @"C:\Users\wande\OneDrive\Documentos\Visual Studio 2019\Spira\Spira\bin\Debug\netcoreapp5.0\Translated\master\new_uspc\menu\macrodic.dcp";
var newPath = newEncodedFiles.Substring(0, newEncodedFiles.LastIndexOf('.'));

You need to use newEncodedFiles , not dcpFile .

var newEncodedFiles = @"C:\Users\wande\OneDrive\Documentos\Visual Studio 2019\Spira\Spira\bin\Debug\netcoreapp5.0\Translated\master\new_uspc\menu\macrodic.dcp";

var newPath = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(newEncodedFiles ), System.IO.Path.GetFileNameWithoutExtension(newEncodedFiles ));

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM