我需要检查给定的URL(不一定以http或https为前缀)是HTTP还是HTTP.
这可能在C#中吗?
如果用户只给出www.dotnetperls.com没有任何前缀,我必须能够识别出它是HTTP.试过以下,
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("www.dotnetpearls.com");
string u = request.RequestUri.Scheme;
Run Code Online (Sandbox Code Playgroud)
但是这会产生无效的URL错误.它期望指定协议.
据我所知,该DateTime类型的差异运算符考虑了闰年:所以
new DateTime(2008, 3, 1) - new DateTime(2008, 2, 1) // should return 29 days
new DateTime(2009, 3, 1) - new DateTime(2009, 2, 1) // should return 28 days
Run Code Online (Sandbox Code Playgroud)
但是夏令时呢?
我正在尝试创建一个电子表格,根据他们的分数自动为学生提供成绩.
我显然已经达到Excel的嵌套IF语句限制,即7.
这是我的if语句:
=IF(O5>0.895,"A+",IF(O5>0.845,"A",IF(O5>0.795,"A-",IF(O5>0.745,"B+",IF(O5>0.695,"B",IF(O5>0.645,"B-",IF(O5>0.595,"C+",IF(O5>0.545,"C","D"))))))))
Run Code Online (Sandbox Code Playgroud)
我在网上看到我可以创建一个VBA脚本然后分配它,但我对VBA一无所知....所以如果有人可以帮我写一个VBA,那就太棒了.
它仍然缺少C级和任何低级应该被授予D标记.
这是我试图创建的评分方案......:
A + 89.500 - 100.000通过优异
84.500 - 89.490优异传球
A- 79.500 - 84.490优异成绩
B + 74.500 - 79.490优异通行证
B 69.500 - 74.490优异成绩
B- 64.500 - 69.490优异成绩
C + 59.500 - 64.490通过
C 54.500 - 59.490通行证
C- 49.500 - 54.490通过
D 0.000 - 49.490指定失败
我不介意去VBA路线,但是我对VB语言的理解绝对是最小的(不喜欢它)...如果这太繁琐了,我想创建一个小的php/mysql应用程序.
我想从stdin流中读取.使用read()或fgets()从stdin流中读取是否有任何区别.
我用fgets附加以下两段代码并读取.使用fgets,我可以使用java程序轻松地编写和读取c程序.随着读写,我的java程序挂起等待C程序的输出,而不是来.
我只是读了一行保持它在buf并附加A到它.
Java程序能够与以下程序通信,该程序与fgets和puts一起使用.
#include <stdio.h>
#include <string.h>
#define SIZE 200000
main()
{
int rc;
int df;
int i;
char buf[SIZE];
for(i=0;i<=120000;i++) {
memset(buf,'\0',SIZE);
if(!fgets(buf,SIZE-1,stdin))
continue;
strcat(buf,"A_A_A_A_A_A_A");
puts(buf);
}
Run Code Online (Sandbox Code Playgroud)
}
但没有read()和write()
main()
{
int rc;
int df;
int i;
char buf[32768];
rc = fcntl(fileno(stdin), F_SETFL, O_NONBLOCK);
//rc = fcntl(fileno(stdout), F_SETFL, O_NONBLOCK);
FILE *fp;
for (;;)
{
int rc=-1;
memset(buf,'\0',32768);
//rc = fread(buf,5, 1, stdin);
rc = read(fileno(stdin),buf,32768);
if (rc > 0)
{
strcat(buf,"B_B_B_B_B_B_B_B_B");
write(fileno(stdout),buf,strlen(buf));
}
}
Run Code Online (Sandbox Code Playgroud)
}
有人可以说出原因.我仍然觉得很难弄明白
有没有办法在Excel中获取比单元格工作表函数中的起始数组更小的数组?
所以,如果我有:
{23, "", 34, 46, "", "16"}
Run Code Online (Sandbox Code Playgroud)
我最终得到:
{23, 34, 46, 16}
Run Code Online (Sandbox Code Playgroud)
然后,我可以使用其他一些功能进行操作.
结论:如果我要做很多这些,我肯定会使用jtolle的UDF梳子解决方案.PPC使用的公式很接近,但潜入并测试,我发现它在空插槽中出错,错过了第一个值,并且有更简单的方法来获取行号,所以这是我的最终解决方案:
=IFERROR(INDEX($A$1:$A$6, SMALL(IF(($A$1:$A$6<>""),ROW($A$1:$A$6)),ROW(1:6))),"")
Run Code Online (Sandbox Code Playgroud)
必须以数组公式(CTRL-SHIFT-ENTER)输入.如果显示,则必须至少输入与结果集一样大的区域以显示所有结果.
我已经将一个ListBox添加到SHEET(而不是"UserForm")我用鼠标做了这个.我点击了小锤子和扳手图标.
这个ListBox似乎很容易使用如下代码引用:
ListBox1.Clear
Run Code Online (Sandbox Code Playgroud)
要么
ListBox1.AddItem("An option")
Run Code Online (Sandbox Code Playgroud)
但是,我有三个这样的ListBoxes(方便地命名为ListBox1,ListBox2和ListBox3),我想编写一个函数来用数组数据填充它们,如下所示:
Call populate_listbox(ListBox2, designAreaArray)
Run Code Online (Sandbox Code Playgroud)
第一个参数是列表框名称,第二个参数是数据.
但我不知道如何正确发送"ListBox2",或在函数内正确引用它.
例如:
Dim controlName as string
controlName = "ListBox1"
Run Code Online (Sandbox Code Playgroud)
不起作用,即使我定义函数如下:
Sub populate_listbox(LB As ListBox, dataArray As Variant)
Dim i As Integer: i = 0
For i = LBound(dataArray, 2) + 1 To UBound(dataArray, 2) ' Skip header row
LB.AddItem (dataArray(index, i))
Next i
End Sub
Run Code Online (Sandbox Code Playgroud)
显然,它会导致错误匹配的数据类型错误.我已经尝试将"controlName"定义为ListBox,但这也不起作用......
虽然可能是我对listBox的引用不正确.我已经看到了很多方法来引用控件对象......
MSForms.ListBox.
ME.ListBox
Forms.Controls.
Worksheet.Shapes.
Run Code Online (Sandbox Code Playgroud)
列表继续,没有任何对我有用.
在" 选项 - >环境 - >字体和颜色"对话框中,您可以Selected Text在"显示项目"列表框中进行选择,但这只允许您更改"项目"背景属性.
如何更改文本颜色,例如,当我选择项目时,我可以在蓝色背景上显示白色文本?此外,有没有办法加粗文本(该Bold框也被禁用).
注意:以下是询问背景颜色变化的问题.
我需要使用ruby签署xml,有人知道任何方法或lib吗?
我的xml骨架是:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Message>
<MessageId>
<ServiceId>service</ServiceId>
<Version>1.0</Version>
<MsgDesc>Service Description</MsgDesc>
<Code>4</Code>
<FromAddress>from</FromAddress>
<ToAddress>to</ToAddress>
<Date>2012-10-29</Date>
</MessageId>
<MessageBody/>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<Reference URI="">
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<DigestValue>??????</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>????????????</SignatureValue>
<KeyInfo>
<X509Data>
<X509Certificate>????????</X509Certificate>
</X509Data>
</KeyInfo>
</Signature>
</message>
Run Code Online (Sandbox Code Playgroud)
我为DigestValue尝试了这个代码,我测试了它,将它与我的java示例进行比较,但是DigestValue与我的java示例的响应不匹配:
require 'base64'
require 'openssl'
to_sign_xml = File.read 'service.xml'
digest = OpenSSL::Digest::SHA1.digest(to_sign_xml)
digest = Base64.encode64(digest.to_s).gsub(/\n/, '')
raise digest.inspect
Run Code Online (Sandbox Code Playgroud)
我的文件service.xml包含:
<Message>
<MessageId>
<ServiceId>service</ServiceId>
<Version>1.0</Version>
<MsgDesc>Service Description</MsgDesc>
<Code>4</Code>
<FromAddress>from</FromAddress>
<ToAddress>to</ToAddress>
<Date>2012-10-29</Date>
</MessageId>
<MessageBody/>
<Message>
Run Code Online (Sandbox Code Playgroud) 我发现了很多关于GPS坐标的问题,但没有一个确认使用移动硬件GPS代替网络GPS如geoLocation等.
我的实际方法:
我正在使用navigator.geolocation.getCurrentPosition(),Lat/Long来自网络,这里是代码:
function getGPS(funcCallBack)
{
if (navigator.geolocation)
{
var timeoutVal = getCookie("GPSTimeout");
navigator.geolocation.getCurrentPosition(sucess
,error
,{enableHighAccuracy: true
,timeout: timeoutVal
,maximumAge: 0}
);
}
else{
alert('GPS is turned off, or was not possible to find it. Now, doing the login without localization.');
window.gpsLat = 0;
window.gpsLng = 0;
window.gpsAcc = 0;
funcCallBack();
}
function sucess(position) //sucess
{
window.gpsLat = position.coords.latitude;
window.gpsLng = position.coords.longitude;
window.gpsAcc = position.coords.accuracy;
funcCallBack();
}
function error() //error
{
window.gpsLat = 0;
window.gpsLng = …Run Code Online (Sandbox Code Playgroud)