小编Fad*_*man的帖子

Powershell取代了失败的换行符

我是powershell的新手.我有一个简单的powershell脚本,只是替换文本但我发现正则表达式替换在生成输出时将我的多行数据源转换为单行文本.我希望保留换行符.这是脚本的愚蠢版本.

$source=(Get-Content textfile.txt)

$process1 = [regex]::Replace($source, "line", "line2")

$process1 | out-file -encoding ascii textfile2.txt
Run Code Online (Sandbox Code Playgroud)

您可以使用这样的简单行创建一个测试文件调用textfile.txt来测试它

line 
line
Some line
More line here
Run Code Online (Sandbox Code Playgroud)

我错过了一些明显的事吗?

谢谢,法德里安

regex powershell

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

检测互联网连接是否繁忙

我们正在开发一个将安装在PC上的应用程序,它将执行一些后台上传和下载到我们的服务器.其中一个要求是检测互联网连接当前是否正忙(比如高于50%利用率),如果是,则需要退回并尝试另一次.主要原因是确保应用程序在游戏,观看在线电影或积极下载文件时不会干扰用户体验

经过对谷歌的大量思考和研究,当然还有SO,我还没有找到一个如何实现这个的好方法,所以决定把它扔出去.该应用程序在C#,.NET 4.0中实现,我正在寻找所有形式的响应 - 无论是在C#或其他语言中实现,伪逻辑还是如何实现的方法 - 在本地PC上测量互联网流量利用率,并且准确度足够高.

为了避免重复工作,到目前为止我已经尝试过这些(以及为什么它们不合适)

  • 使用WMI获取网络统计信息.大多数SO帖子和解决方案从那以后将其称为方法,但它不符合我们的要求,因为测量针对网络接口容量(例如1GB以太网卡)发送/接收的字节以便利用将为LAN流量提供良好的衡量标准但不适用于互联网流量(实际互联网带宽可能仅为8Mbps)
  • 使用.NET网络信息统计或性能计数器 - 产生与上述类似的读数因此具有相同的缺点
  • 使用ICMP(Ping)并测量RTT.有人建议400ms RTT被认为是繁忙网络的缓慢和良好的指示,但我被告知用户使用调制解调器(是的,我们必须支持),使用反向代理或微波链路经常得到ping,因此不是很好测量
  • 开始下载一个已知文件并测量速度 - 这本身会产生我们试图避免的流量,如果这个检查经常进行,我们的应用程序最终会创建大量的互联网流量 - 这也不是理想的
  • MOD:使用BITS - 可以在用户PC上禁用此服务,需要更改组策略并假设服务器为IIS(具有自定义配置),在我们的示例中,我们的服务器不是IIS

所以在这里,我很困惑并寻找一些建议.我突出了问题文本,以便你们不要迷失阅读本文,并想知道问题是什么.谢谢.

.net c# language-agnostic network-utilization

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

ASP.NET Core Json 对象的格式很奇怪,格式为 \u0022

我打算从 ASP.NET Core 控制器做一个 JSON 响应,但它并不像我想象的那么简单。

一个简单的字符串 {"ConfigValue":"192.168.1.125:1880"}应该被序列化为一个 JsonObject 并且这个对象应该是 JSON 响应的一部分。

但是返回 Json(str) 响应类似于

{\u0022ConfigValue\u0022:\u0022192.168.1.125:1880\u0022}
Run Code Online (Sandbox Code Playgroud)

我不知道如何摆脱 \u0022

public class commonController : Microsoft.AspNetCore.Mvc.Controller
{
    private  IConfiguration config;

    public commonController(IConfiguration configuration)
    {
        config = configuration;
    }
    // GET
    [Route("getConfigEntry/{key?}")]
    public JsonResult getConfigEntry(string? key)
    {
        Dictionary<string, string> dict = new Dictionary<string, string>
        {
            {"ConfigValue", "192.168.1.125:1880"}
        };
        str = JsonConvert.SerializeObject(dict,Formatting.None); //from debugger variable viewer {"ConfigValue":"192.168.1.125:1880"}
        return Json(str); // "{\u0022ConfigValue\u0022:\u0022192.168.1.125:1880\u0022}"
    }
}
Run Code Online (Sandbox Code Playgroud)

c# json.net

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