小编Rac*_*oon的帖子

在C#中,将字符串格式化为XML的最佳方法是什么?

我正在使用C#创建一个轻量级编辑器,并希望知道将字符串转换为格式良好的XML字符串的最佳方法.我希望C#库中有一个公共方法,比如"public bool FormatAsXml(string text,out string formattedXmlText)",但它可能不那么容易,是吗?

非常具体地,"SomeMethod"方法必须是什么才能产生下面的输出?

string unformattedXml;
string formattedXml;

unformattedXml = "<?xml version=\"1.0\"?><book><author>Lewis, C.S.</author><title>The Four Loves</title></book>"
formattedXml = SomeMethod(unformattedXml);

Console.WriteLine(formattedXml);
Run Code Online (Sandbox Code Playgroud)

输出:

<?xml version="1.0"?>
  <book id="123">
    <author>Lewis, C.S.</author>
    <title>The Four Loves</title>
  </book>
Run Code Online (Sandbox Code Playgroud)

c# xml string formatting string-formatting

40
推荐指数
5
解决办法
4万
查看次数

为什么我们使用虚拟和覆盖?

为什么我们使用override和virtual如果它们在我们不使用override和virtual时会产生相同的效果?

例1:

class BaseClass
{
    public virtual string call()
    {
        return "A";
    }
}

class DerivedClass : BaseClass
{
    public override string call()
    {
        return "B";
    }
}
Run Code Online (Sandbox Code Playgroud)

输出:B

例2:

class BaseClass
{
    public string call()
    {
        return "A";
    }
}

class DerivedClass : BaseClass
{
    public string call()
    {
        return "B";
    }
}
Run Code Online (Sandbox Code Playgroud)

输出仍然是相同的:

输出:B

运行测试:

class Program
{
    static void Main(string[] args)
    {
        DerivedClass dc = new DerivedClass();
        Console.WriteLine(dc.call());
        Console.ReadKey();
    }
}
Run Code Online (Sandbox Code Playgroud)

编译器是否在编译时自动添加虚拟和覆盖?

如果有人向我解释使用虚拟和覆盖的原因,我会很高兴.

c#

15
推荐指数
2
解决办法
2万
查看次数

如何设置/创建Generics实例?

我有以下问题:

class Request<T>
{
    private T sw; 

    public Request()
    {
        //How can i create here the instance like
        sw = new T();
    }

}
Run Code Online (Sandbox Code Playgroud)

有可能做到吗?

c#

6
推荐指数
3
解决办法
94
查看次数

是否可以在 C# 中创建新类型?

我想创建一个新类型,即。电子:

[sbyte  (1 Byte) Value-range :        -128 to +127]
[byte   (1 Byte) Value-range :           0 to +255]    
[short  (2 Byte) Value-range :      -32768 to +32767]
[ushort (2 Byte) Value-range :           0 to +65535]    
[int    (4 Byte) Value-range : -2147483648 to +2147483647]
[uint   (4 Byte) Value-range :           0 to +4294967295]
.
.
.
etc.
Run Code Online (Sandbox Code Playgroud)

现在我想创建 0 到 200000 范围内的 LInt(LowInt) 类型,所以我不想使用 uint 或 int。

用C#可以吗?

谢谢你!

c# visual-studio-2010

5
推荐指数
1
解决办法
176
查看次数

最高 字节数组的容量?

我做了一个JavaClass,它使加,减,乘多。等等

和数字类似(155 ^ 199 [+,-,,/] 555 ^ 669 [+,-,,/] ..... [+,-,*,/] x ^ n);

每个数字都存储在Byte-Array中,并且byte-Array可以包含最大值。66.442

例:

(字节)数组= [1] [0] + [9] [0] = [1] [0] [0]

(字节)数组= [9] [0] * [9] [0] = [1] [8] [0] [0]

如果数字大于则我的班级文件不起作用(例如:999 ^ 999)

我如何解决这个问题,使更大的数字之间相加?

当字节数组达到66.443值时,VM给出此错误:

原因:java.lang.ClassNotFoundException。这实际上不是正确的错误描述。

好吧,这意味着,如果我有一个具有66.443值的字节数组,则该类无法正确读取。

已解决: 使用多维字节数组来解决此问题。

array {array,... nth-array} [+,-,/] nth-array {array,... nth-array}

仅需几秒钟即可在大数之间进行加法运算。

谢谢!

java

3
推荐指数
2
解决办法
3万
查看次数

验证xml的有效方法?

我需要尽可能快地验证并在socket上接收下一个xml数据.

我正在使用此方法来验证收到的xml-datas.

private validateRecievedXmlCallback()
{
  try
  {      
    XmlReader xreader = XmlReader.Create(new StringReader(xmlData));
    while (xreader.Read()) ;
  }
  catch (Exception)
  {
    return false;
  }

  return true;
}
Run Code Online (Sandbox Code Playgroud)

但我认为这种方法效率不高.我实际上只需要检查最后一个标签.

例:

<test valueA="1" valueB="2">
   <data valueC="1" />
   <data valueC="5" />
   <data valueC="5">220</data>
</test>  //I need to check if </test> tag closed, but whats the best way to do it?
Run Code Online (Sandbox Code Playgroud)

c# xml

3
推荐指数
1
解决办法
707
查看次数

如何调用低级KeyHook组合键?

我真的无法解决这个问题,甚至不知道,如果可能的话.

我想使用CTRL + CCTRL + V快捷方式.

示例:有2个应用程序.1.应用程序是用C#编写的,2.App是一个Java-Applet.我想从C#App复制字符串.并将其粘贴到Java-Applet中的焦点文本框中.

我将字符串复制到剪贴板中,我需要将其粘贴到Java-Applet中的焦点文本框中.

string data = "12345";
Clipboard.SetData(DataFormats.Text, (Object)data);
Run Code Online (Sandbox Code Playgroud)

现在我需要将此信息粘贴到Applet中的文本框中.

如何在C#中调用CTRL + V快捷方式?

有可能做那样的事吗?

谢谢!

c#

1
推荐指数
1
解决办法
359
查看次数

如何递归调用2个函数?

我有两个功能:

let fn2 =
  if "something happend" then
    fn1

let rec fn1 =
  if "something" then
    fn2
Run Code Online (Sandbox Code Playgroud)

这只是一个例子,我想要做的.有什么想法怎么做?

或者我应该将2.函数发送到1.函数作为参数?

f#

0
推荐指数
1
解决办法
89
查看次数

标签 统计

c# ×6

xml ×2

f# ×1

formatting ×1

java ×1

string ×1

string-formatting ×1

visual-studio-2010 ×1