小编che*_*man的帖子

使用FileSystemWatcher监视目录

我正在使用Windows窗体应用程序来监视目录并将其中的文件移动到另一个目录.

目前它会将文件复制到另一个目录,但是当添加另一个文件时,它将以没有错误消息结束.有时它会在结束第三个文件之前复制两个文件.

这是因为我使用的是Windows窗体应用程序而不是控制台应用程序吗?有没有办法可以阻止程序结束并继续观看目录?

private void watch()
{
  this.watcher = new FileSystemWatcher();
  watcher.Path = path;
  watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite
                         | NotifyFilters.FileName | NotifyFilters.DirectoryName;
  watcher.Filter = "*.*";
  watcher.Changed += OnChanged;
  watcher.EnableRaisingEvents = true;
}

private void OnChanged(object source, FileSystemEventArgs e)
{
  //Copies file to another directory.
}

public void Dispose()
{
  // avoiding resource leak
  watcher.Changed -= OnChanged;
  this.watcher.Dispose();
}
Run Code Online (Sandbox Code Playgroud)

c# io filesystemwatcher copy winforms

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

从BinaryTree中删除BinaryTreeNode

我有一个BinarySearchTree由节点组成的节点,这些节点都是dataType学生的模板类,其中student是一个具有名称和等级的私有变量的类.

目前我可以打印树,在树中查找名称和/或等级,但我在从树中删除节点时遇到问题.

我试图删除所有年级<50(因此失败)的学生.

删除节点后,需要执行以下任一操作:

  1. 左子项为空:用正确的子项替换节点.
  2. 左子项不为空:用左分支中的最高元素替换节点.

我对此的理解是,如果这是树:

      1
     /  \
    2    3
   / \   /\
  4  5  6  7
Run Code Online (Sandbox Code Playgroud)

如果2失败,即等级<50

你最终会得到

     1
    /  \
  4     3
   \    / \
    5  6  7
Run Code Online (Sandbox Code Playgroud)

4是左分支中的最高元素.

如果这是树:

     1
    /  \
   2     3
   \     / \
    5  6   7
Run Code Online (Sandbox Code Playgroud)

2失败了

你最终会得到

     1
    /  \
  5      3
        /  \
       6   7
Run Code Online (Sandbox Code Playgroud)

如果这是树:

     1
    /  \
  2     3
 / \    / \
 4  5  6  7
Run Code Online (Sandbox Code Playgroud)

1失败了

你最终会得到

     5
    /  \
  2     3
 / …
Run Code Online (Sandbox Code Playgroud)

c++ tree binary-tree memory-management

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

HTMLAgilityPack获取带有id属性的td标记的innerText

我试图用HTMLAgilityPack选择带有id属性的td的内部文本.

Html代码:

<td id="header1">    5    </td>
<td id="header2">    8:39pm    </td>
<td id="header3">    8:58pm    </td>
...
Run Code Online (Sandbox Code Playgroud)

码:

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();

doc.LoadHtml(data);

var nodes = doc.DocumentNode.SelectNodes("//td[@id='header1']");

if (nodes != null)
{
    foreach (HtmlAgilityPack.HtmlNode node in nodes)
    {
        MessageBox.Show(node.InnerText);
    }
}
Run Code Online (Sandbox Code Playgroud)

我一直得到空节点,因为我没有正确选择td标签,但无法弄清楚我做错了什么...

编辑:

我在header1和header2中犯了一个错误,但是有5个不同的td标签,标头为1到5.

html c# html-table nodes html-agility-pack

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

使用View.Details使用ImageList填充ListView

将问题加载到我的列表视图中时出现问题.我可以让图像在大视图中工作,但不能在细节上工作,不太确定我做错了什么.

private void CreateList()
{
    listView1.View = View.Details;

    listView1.Columns.Add("Icon", -2, HorizontalAlignment.Center);

    listView1.Columns.Add("Name", -2, HorizontalAlignment.Left);

    imageList1.ImageSize = new Size(32, 32);

    for (int i = 0; i < subKeys.Length; i++)
    {
        if (subKeys[i].Contains("App"))
        {
            imagePath = subKeys[i];

            if (System.IO.File.Exists(imagePath))
            {
                imageList1.Images.Add(Image.FromFile(imagePath));
            }

            numberOfImages++;
        }
    }

    listView1.StateImageList = this.imageList1;
}
Run Code Online (Sandbox Code Playgroud)

.net c# listview imagelist detailview

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

更改某些ListView列的颜色

如何更改列表视图中特定列的颜色?

string[] row = { appID[i], "Launch Game"}; // more data to add

listView1.Items.Add(nameArray[i], i).SubItems.AddRange(row);

listView1.ForeColor = System.Drawing.Color.Blue;
Run Code Online (Sandbox Code Playgroud)

c# listview items colors subitem

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

发出获取Collections.shuffle()的双精度数组工作

我试图在java bean中混洗一组双打,以便在JSP文件中使用.

在我的java bean的默认构造函数中,我有:

amounts  = new double[] {0.5, 1, 1.5, 2, 2.5. 3, 3.5, 4};

Collections.shuffle(Arrays.asList(amounts));
Run Code Online (Sandbox Code Playgroud)

我可以调用bean的方法,但由于某种原因,amount数组保持不变,所以它要么不是shuffling,要么默认构造函数没有执行.没有错误被抛出,所以我相信它可能是构造函数没有执行但我无法弄清楚为什么.

在我的JSP中我使用:

<jsp:useBean id="myBean" class="logic.logicBean" scope = "session" />
Run Code Online (Sandbox Code Playgroud)

我想这样做,默认构造函数会执行,这是错误的吗?

java collections jsp shuffle javabeans

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