简体   繁体   English

C# Substring 返回错误值

[英]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.它在 .net 核心 3.1 控制台应用程序中按预期工作。

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 .您需要使用newEncodedFiles ,而不是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 ));

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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