小编Nic*_*rey的帖子

从XML转换数组

我在我的文件中使用XML并想要序列化然后反序列化一个对象,我有些新手.该对象包含一对字符串,一个int,然后是两个int []数组.使用XmlSerializer进行序列化很好,生成的XML看起来像这样:

http://codepaste.net/x9x5ms

<?xml version="1.0" encoding="utf-16"?>
<Harvey xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Name>Carl</Name>
  <Ch>KNV</Ch>
  <Tn>40</Tn>
  <APoints>
    <int>8</int>
    <int>20</int>
    <int>16</int>
    <int>16</int>
    <int>12</int>
    <int>12</int>
    <int>16</int>
    <int>16</int>
    <int>4</int>
    <int>4</int>
    <int>4</int>
  </APoints>
  <SPoints>
    <int>3</int>
    <int>12</int>
    <int>10</int>
    <int>10</int>
    <int>6</int>
    <int>6</int>
    <int>10</int>
    <int>10</int>
  </SPoints>
</Harvey>
Run Code Online (Sandbox Code Playgroud)

问题是尝试将int []值加载回其数组中.我一直无法弄清楚如何告诉我想所有的Apoints加载到一个int []数组中的应用.我怀疑解决方案非常简单,但我一直无法弄清楚.

c# xml xpath xml-serialization

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

SQL将Datetime转换为varchar10并减去1天

我有下面的查询,我把它放在一起,它运行得很糟糕(因为我相信你可以看到).

我很确定它与我转换日期时间的方式有关,这样我就可以参考昨天的数据了.

dtInteractionLocalStartTime是一个日期时间字段,我希望它显示为mm/dd/yyyy而不是yyyy-mm-dd hh:mm:ss.sss

关于如何优化这个的任何想法?我已经度过了这两天,我无法弄明白.

这是我的查询:

SELECT TOP 100 PERCENT
       Date ,
       CONVERT(varchar, VDN) AS VDN ,
       COUNT(*) AS Calls ,
       Avaya
FROM ( SELECT DISTINCT TOP 100 PERCENT
              CONVERT(varchar,dtInteractionLocalStartTime,101) AS Date ,
              vcVectorNumber AS VDN ,
              iCompoundID ,
              'CM03' AS Avaya
       FROM NICEHUB3ADTM.nice_dw.dbo.vwNiceDBKitInteraction AS i
       WHERE CONVERT(varchar(10) , dtInteractionLocalStartTime,101) = CONVERT(varchar(10),GETDATE()-1,101)
         AND iMediaTypesId = 2
         AND tiCallDirectionTypeID = 1
         AND tiInteractionTypeID = 2
         AND iInteractionOpenReasonID & 16 = 0
         AND iInteractionOpenReasonID & 4 = 0
         AND iInteractionID NOT IN …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server sql-server-2008-r2

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

MD5 computeHash(Stream)和computeHash(byte [])之间有什么区别

这对于我见过的一些人来说是一个问题,但大多数人都是关于文本问题的.这是纯粹的二元问题.这是一些示例代码.

MD5 md5Bytes  = MD5.Create() ;
MD5 md5Stream = MD5.Create() ;
var random    = new Random();

var bytes     = new byte[ 4096*2 ] ;
random.NextBytes(bytes);    
var stream = new MemoryStream(bytes) ;

stream.Position = 0 ;

var bytesHash   = md5Bytes.ComputeHash(bytes);
var streamHash  = md5Stream.ComputeHash(stream);

for (int i = 0; i < bytesHash.Length; ++i)
  if ( bytes[i] != streamHash[i] )
  {
    Console.WriteLine("Different content " + i);
    break;
  }
Run Code Online (Sandbox Code Playgroud)

当我跑这个时,令我惊讶的是我得到了不同的结果.有人可以解释这里发生的事情,不应该是字节数组的MD5给出与相同内容流相同的结果吗?

.net c# hash md5

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

将文件从一个目录复制到另一个目录的最快方法

我需要将文件从一个目录复制到另一个目录,具体取决于SQL数据库表中是否存在文件名.

为此,我使用以下代码:

using(SqlConnection connection = new SqlConnection("datasource or route"))
{

  connection.Open();

  using(SqlCommand cmd = new SqlCommand("SELECT idPic, namePicFile FROM DocPicFiles", connection))
  using (SqlDataReader reader = cmd.ExecuteReader())
  {

    if (reader != null)
    {
      while (reader.Read())
      {
        //picList IS AN ARRAY THAT Contains All the files names in a directory
        if (picList.Any(s => s.Contains(reader["namePicFile"].ToString())))
        {
          File.Copy("theFile  in the Directory or array picList",  "the destiny directory"+ ".jpg", false)
        }
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

有没有什么办法可以在更短的时间内完成?这需要1小时,为20.876记录.

c# system.io.file

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

序言 f(X) :- X==[]

当我有序言程序时

f(X) :- X==[].
Run Code Online (Sandbox Code Playgroud)

输出是

|:-f(X).
false.
:-f([]).
true.
Run Code Online (Sandbox Code Playgroud)

在第一个输出 prolog 中声称没有X,所以这f(X)是真的。

f([])确实如此,所以序言应该说X=[]。作为第一个查询的答案。

为什么是这样?我该如何解决。

a(X,X).
b(A,B) :- A==X,B==X.
Run Code Online (Sandbox Code Playgroud)

还有一个更严重的问题:

|:-a([a],[a]).
true.
:-b([a],[a]).
false.
Run Code Online (Sandbox Code Playgroud)

我相信,ab是完全一样的语句,只是有不同的写法。

IDE 声称这A==X总是错误的,所以我想我对变量在 prolog 中的工作方式有严重的误解。

prolog

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

为什么我会崩溃并在一周中错误的一天?

我的系统时钟是9/16/2014(星期二)

但在代码中,我总是跳到星期一.

DayOfWeek dow = new DateTime().DayOfWeek;
int columnNumber = 0;

columnNumber = columnNumber + 0;

foreach ( DataGridViewRow row in dataGridView1.Rows )
{
  switch ( dow )
  {
  case DayOfWeek.Monday:
    columnNumber = 4;
    if ( (bool) row.Cells[4].Value == true ) // crashing here with NullReferenceException
    {
      row.Cells["activeTodayDataGridViewCheckBoxColumn"].Value = true;
    }
    break;
Run Code Online (Sandbox Code Playgroud)

我有一个 DataGridView

  • 第0-3列是 Text
  • 第4-9列是 DataGridViewCheckBoxColumn

c# datagridview switch-statement datagridviewrow

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

费雪耶茨洗牌卡列表

我正试图将Fisher Yates洗牌放在一张牌上.我已经搜索了论坛,Fisher Yates的唯一实现是使用下面的普通int数组

for (int i = length - 1; i > 0; i--)
{
  int j = random.Next(i + 1);
  int temp = array[i];
  array[i] = array[j];
  array[j] = temp;
}
Run Code Online (Sandbox Code Playgroud)

这很有道理,我的麻烦是我真的没有看到如何将这种逻辑转换为我拥有的东西,任何帮助实现这一点都将非常感激.相关代码如下:

public struct Card : IComparable<Card>
{
  public Rank Rank { get; private set; }
  public Suit Suit { get; private set; }

  public Card(Rank rank, Suit suit) : this()
  {
    Rank = rank;
    Suit = suit;
  }

  public override string ToString()
  {
    return string.Format("{0:x} {1}", (char) Suit, …
Run Code Online (Sandbox Code Playgroud)

c# shuffle

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

如何得到这个日期格式CCYY-MM-DDThh:mm:ss.sss-hh:mm

我期望将datetime传递给其中一个服务,格式应为"CCYY-MM-DDThh:mm:ss.sss-hh:mm".它必须是datetime而不是string.

传递请求的变量类似于:Request.Timestamp并且是Datetime.

我尝试 什么(所有这些都有例外):

DateTime.Parse(DateTime.UtcNow.ToString(@"yyyy-MM-ddTHH\:mm\:ss.fffffffzzz"), null, System.Globalization.DateTimeStyles.AssumeLocal);
DateTime.Parse(DateTime.UtcNow.ToString(@"yyyy-MM-ddTHH\:mm\:ss.fffffffzzz"), null, System.Globalization.DateTimeStyles.None)
DateTime.Parse(DateTime.UtcNow.ToString(@"yyyy-MM-ddTHH\:mm\:ss.fffffffzzz"), null, System.Globalization.DateTimeStyles.RoundtripKind)
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-ddThh:mm:ss.sss-hh:mm"));
DateTime.Parse(DateTime.Now.ToString(@"yyyy-MM-ddTHH\:mm\:ss.fffffffzzz"), null, System.Globalization.DateTimeStyles.AssumeLocal);
Run Code Online (Sandbox Code Playgroud)

任何帮助都将得到帮助.我正在使用的Progarmming语言是C#.NET

.net c# datetime

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

代码未显示预期消息

此代码应该提示消息:"成功返回"时,textbookid.Text=not empty string并提示消息:"选择错误"时textbookid.Text=empty string.问题是,当textbookid.text=empty string代码提示:"成功返回"而不是提示"选择错误".

try
{

  connection.Open();

  OleDbCommand command = new OleDbCommand();
  command.Connection = connection;

  string cb = "UPDATE book SET [Location] = 'lib' WHERE [Book_Id]='"
            + textbookid.Text
            + "'"
            ;

  command = new OleDbCommand(cb);
  command.Connection = connection;

  command.ExecuteReader();

  MessageBox.Show( "Successfully returned",
     "Book Details",
     MessageBoxButtons.OK,
     MessageBoxIcon.Information
     );

  connection.Close();


  //delete_records();
  //refs();
  //refchk();

}
catch
{
  MessageBox.Show("Selection Error.");
}
Run Code Online (Sandbox Code Playgroud)

c# database

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

如果没有箭头函数(常规函数),我将如何重写它

我不太擅长箭头函数,希望进行一些从箭头函数更改为常规函数的练习。这是在 React 中。

function render() {
  const todoItems = this.state.todos.map(
    item => <TodoItem
      key={item.id}
      item={item}
      handleChange={this.handleChange}
    />
  );
Run Code Online (Sandbox Code Playgroud)

javascript

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