我写了以下功能
public void TestSB()
{
string str = "The quick brown fox jumps over the lazy dog.";
StringBuilder sb = new StringBuilder();
int j = 0;
int len = 0;
try
{
for (int i = 0; i < (10000000 * 2); i++)
{
j = i;
len = sb.Length;
sb.Append(str);
}
Console.WriteLine("Success ::" + sb.Length.ToString());
}
catch (Exception ex)
{
Console.WriteLine(
ex.Message + " :: " + j.ToString() + " :: " + len.ToString());
}
}
Run Code Online (Sandbox Code Playgroud)
现在我想,这个stringbuilder有能力超过20亿字符(准确地说是2,147,483,647).
但是当我运行上面的函数时,它只是在达到大约8亿的容量时给出了"System.OutOfMemoryException".而且,我在具有相同内存和相似负载量的不同PC上看到了截然不同的结果.
任何人都可以提供或解释我的原因.
如何通过javascript清除浏览器缓存和历史记录我找到了一些链接,如: -
但他们没有正确描述如何通过javascript(或jQuery)实现这一点
我需要这样,以便用户不必执行[Ctrl + F5]或手动清除缓存,并在浏览器中加载最新版本的javascript文件.
主要目的是每次用户访问网站时加载最新的JavaScript文件.我在ASP.NET MVC和javascript文件中的应用程序包含在.csHtml文件中.
我想使用wsdl2java(CXF)命令生成自定义包.
我的WSDL结构是:
wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:jms="http://www.tibco.com/namespaces/ws/2004/soap/binding/JMS"
xmlns:ns20="http://cdm.test.co.uk/marketing/Promotions/2.0"
xmlns:jndi="http://www.tibco.com/namespaces/ws/2004/soap/apis/jndi"
xmlns:ns16="http://cdm.test.co.uk/common/CrossRef/2.0"
xmlns:ns17="http://services.test.co.uk/service/CommonMessage/2.0"
xmlns:ns14="http://cdm.test.co.uk/banking/Wallet/2.0"
xmlns:ns15="http://cdm.test.co.uk/common/Currency/2.0"
xmlns:ns18="http://cdm.test.co.uk/customer/Transaction/2.0"
xmlns:ns19="http://cdm.test.co.uk/party/PartyRole/2.0"
xmlns:ns9="http://cdm.test.co.uk/common/Channel/2.0"
xmlns:soap1="http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:ns12="http://cdm.test.co.uk/banking/Payment/2.0"
xmlns:ns5="http://cdm.test.co.uk/common/InternationalMoney/2.0"
xmlns:ns13="http://cdm.test.co.uk/customer/Account/2.0"
xmlns:ns6="http://cdm.test.co.uk/common/Location/2.0"
xmlns:ns10="http://cdm.test.co.uk/retail/RetailShop/2.0"
xmlns:ns7="http://cdm.test.co.uk/party/Party/2.0"
xmlns:ns11="http://cdm.test.co.uk/common/BaseType/2.0"
xmlns:ns8="http://cdm.test.co.uk/product/Games/2.0"
xmlns:ns2="http://cdm.test.co.uk/common/Country/2.0"
xmlns:ns1="http://cdm.test.co.uk/customer/Customer/2.0"
xmlns:ns4="http://cdm.test.co.uk/partner/Affiliate/2.0"
xmlns:ns3="http:///common/ManagedEntity/2.0"
xmlns:tns="http://services.test.co.uk/service/banking/walletTransaction/TransferFunds/1.0"
xmlns:ns0="http://cdm.test.co.uk/producdm.test.co.ukct/Catalogue/2.0"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
targetNamespace="http://services.test.co.uk/service/banking/walletTransaction/TransferFunds/1.0"
Run Code Online (Sandbox Code Playgroud)
我使用下面的命令来生成java文件:
wsdl2java -db xmlbeans -d"D:\ MY_PROJECT"wsdllocation
所以所有的java文件都是在uk.co.test.cdm和uk.co.test.services文件夹中创建的.
但我想在com.greeting.cdm和com.greeting.services文件夹下生成所有文件.意味着uk.co.test应该被com.greeting取代.
我在命令中使用了此选项来更改包 :-p com.greeting但这不起作用.
谁能请解决方案来解决这个问题.
我试图将字符串的值放入字节数组而不更改字符.这是因为字符串实际上是数据的字节表示.
目标是将输入字符串移动到字节数组中,然后使用以下命令转换字节数组:
string result = System.Text.Encoding.UTF8.GetString(data);
Run Code Online (Sandbox Code Playgroud)
我希望有人可以帮助我,虽然我知道这不是一个很好的描述.
编辑:也许我应该解释一下,我正在研究的是一个带有文本框的简单窗体,用户可以将编码数据复制到其中,然后单击预览以查看解码数据.
编辑:多一点代码:(inputText是一个文本框)
private void button1_Click(object sender, EventArgs e)
{
string inputString = this.inputText.Text;
byte[] input = new byte[inputString.Length];
for (int i = 0; i < inputString.Length; i++)
{
input[i] = inputString[i];
}
string output = base64Decode(input);
this.inputText.Text = "";
this.inputText.Text = output;
}
Run Code Online (Sandbox Code Playgroud)
这是Windows窗体的一部分,它包含一个富文本框.这段代码不起作用,因为它不会让我将char类型转换为byte.但是,如果我将线路更改为:
private void button1_Click(object sender, EventArgs e)
{
string inputString = this.inputText.Text;
byte[] input = new byte[inputString.Length];
for (int i = 0; i < inputString.Length; i++)
{
input[i] = (byte)inputString[i]; …Run Code Online (Sandbox Code Playgroud) 我想将值插入33.55555数据库.即使将mysql行更改为float或后decimal,我也无法正确执行此操作.
MySQL的:
ALTER TABLE `test` CHANGE `test1` `test1` DECIMAL( 10,10 ) NOT NULL
Run Code Online (Sandbox Code Playgroud)
插入后将33.55555其转换为0.9999999999通过此sql命令
ALTER TABLE `test` CHANGE `test1` `test1` FLOAT( 10,10 ) NOT NULL
Run Code Online (Sandbox Code Playgroud)
33.55555 转换为 1.0000000000
我有一份清单
List<int> list = new List<int>();
Run Code Online (Sandbox Code Playgroud)
现在我想将它添加到Jagged数组中
int[][] A = new int[][] { list.ToArray() };
Run Code Online (Sandbox Code Playgroud)
这个代码在顶部是可以的,但问题是列表中的所有值都添加在第一个块中!那么,这将解决:
int[] x1 = list.ToArray();
int[][] A = new int[][] { new[] { x1[0] }, new[] { x1[1] }, new[] { x1[2] }, new[] { x1[3] } };
Run Code Online (Sandbox Code Playgroud)
但是(上面的代码)我现在已经手动完成了这个,这只是列表中我列出的前四个索引.
如何将整个列表(所有索引)添加到我的锯齿状数组(使用圆圈或其他方法).