実行時に文字列に適用される文字列メソッドを動的に渡すにはどうすればよいですか。元。
Private String Formatting(String Data, String Format)
通過するString S1 = "S1111tring Manipulation"
とformat = Remove(1,4)
- 舞台裏S1.Remove(1,4)
で「文字列操作」が発生します
または、通過して舞台裏を通過するString S1 = "S1111tring Manipulation"
と、format = ToLower()
S1.ToLower()
"s1111tring manipulation"
PadLeft(25,'0')
、などPadRight
の有効なメソッドを渡すことができるはずですReplace
...
完全な例をいただければ幸いです
これは私が試したもので、うまくいきません
using System.Reflection;
string MainString = "S1111tring Manipulation";
string strFormat = "Remove(1, 4)";
string result = DoFormat(MainString, strFormat);
private string DoFormat(string data, string format)
{
MethodInfo mi = typeof(string).GetMethod(format, new Type[0]);
if (null == mi)
throw new Exception(String.Format("Could not find method with name '{0}'", format));
return mi.Invoke(data, null).ToString();
}
エラーがスローされます ('Remove(1, 4)' という名前のメソッドが見つかりませんでした) - 続行する方法がわかりません