【问题标题】:Remove C# Escape Character删除 C# 转义字符
【发布时间】:2011-06-12 00:22:09
【问题描述】:

我在使用 VSTO 的 Evaluate 函数时遇到问题,该函数基本上是在 Excel 中转换公式并返回值。

我正在苦苦挣扎的是,如果我传递一个带有 " 字符的公式,C# 会自动在它旁边添加 \,我确实理解它为什么存在,但它导致函数失败,因为 \ 字符试图获得评估也可以,但是如果我使用字符串 Replace 函数来删除 \ 字符,它就可以工作。

但是,我不能只删除 \ 字符,如果用户在单元格上键入 \ 字符怎么办?无论如何,我都会删除它并导致我的解决方案给出错误的答案。

谁能帮我解决这个问题?

我尝试过使用@符号,也不起作用。

任何帮助将不胜感激。

【问题讨论】:

  • 您可以将 \" 替换为 " 而不是 \ 替换为 吗?如果用户输入一个 \ 并且它正在转义,就像你说的那样,那不会也被转义到 \\ 吗?以下是一些转义字符msdn.microsoft.com/en-us/library/h21280bw(v=vs.80).aspx
  • 请贴出被调用的代码?
  • Microsoft.Office.Interop.Excel.Application xl = Globals.ThisAddIn.Application;元素 = xl.ActiveCell.Formula;字符串结果 = xl.Evaluate(element.ToString()).Value.ToString();

标签: c# excel escaping vsto formula


【解决方案1】:

我怀疑您只是在调试器中看到了 \ 字符。我在 C# 中见过的任何东西都不会自动在任何字符串中插入转义字符。能给我们一些示例代码吗?

【讨论】:

  • 嗨,克里斯,我在调试器模式下看到了 \ 字符,但是如果我将 \ 替换为空字符串,则代码可以完美运行,如果不这样做,则会引发错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-24
  • 2020-07-28
  • 1970-01-01
相关资源
最近更新 更多