标签: data-conversion

如何在MarkLogic中将字符串转换为日期类型?

我目前在将String数据类型转换为Date类型方面遇到一些挑战。我使用了 MarkLogic JavaScript 函数xdmp.parseDateTime,但总是收到以下错误:

场景:将“2013-04-21”(字符串)转换为2013-04-21(日期类型)

代码:

let targetDateString = "2013-04-21";
let targetDate = new Date();

targetDate = xdmp.parseDateTime("[Y0001]-[M01]-[D01]", 
xs.date(targetDate));
Run Code Online (Sandbox Code Playgroud)

错误信息:

XDMP-ARGTYPE: xdmp.parseDateTime("[Y0001]-[M01]-[D01]", xs.date("2013-04-21")) -- arg2 不是 String 类型

我是否使用了正确的 MarkLogic 函数,为其提供了正确的参数?或者有更好的方法吗?

如何将日期转换回字符串数据类型?

javascript data-conversion marklogic

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

尝试从 5 或 6 位数字中提取日期

我正在尝试从数字中提取日期。日期存储为 11 位个人 ID 号(日期-月份-年)的前 6 位数字。不幸的是,基于云的数据库 (REDCap) 输出被格式化为数字,因此每月前 9 天出生的人的前导零最终会变成 10 位数字的 ID 号码,而不是 11 位数字。我设法提取了与日期相对应的 6 或 5 位数字,即 311230 代表 1930 年 12 月 31 日,或 11230 代表 1930 年 12 月 1 日。我最终遇到了两个无法解决的问题。

假设我们使用以下数字:

dato <- c(311230, 311245, 311267, 311268, 310169, 201104, 51230, 51269, 51204)
Run Code Online (Sandbox Code Playgroud)

我将它们转换为字符串,然后应用 as.Date() 函数:

datostr <- as.character(dato)
datofinal <- as.Date(datostr, "%d%m%y")
datofinal
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是:

  • 五位数字(例如 11230)将报告为 NA。
  • 可以识别六位数字,但 1969 年 1 月 1 日之前出生的数字会加上 100 年进行报告,即 010160 转换为 2060.01.01

我确信这对于那些对 R 有更多了解的人来说一定很容易,但是,我在解决这个问题上有点困难。任何帮助是极大的赞赏。

问候比约恩

r date data-conversion redcap

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

在 Javascript 中将 Uint8Array 转换为 BigInt

我发现了 3 种将 Uint8Array 转换为 BigInt 的方法,由于某种原因,它们都给出了不同的结果。您能告诉我哪一种是正确的以及我应该使用哪一种吗?

  1. 使用bigint 转换库。我们可以使用bigintConversion.bufToBigint()函数来获取 BigInt。实现如下:
export function bufToBigint (buf: ArrayBuffer|TypedArray|Buffer): bigint {
  let bits = 8n
  if (ArrayBuffer.isView(buf)) bits = BigInt(buf.BYTES_PER_ELEMENT * 8)
  else buf = new Uint8Array(buf)

  let ret = 0n
  for (const i of (buf as TypedArray|Buffer).values()) {
    const bi = BigInt(i)
    ret = (ret << bits) + bi
  }
  return ret
}
Run Code Online (Sandbox Code Playgroud)
  1. 使用数据视图:
let view = new DataView(arr.buffer, 0);
let result = view.getBigUint64(0, true);
Run Code Online (Sandbox Code Playgroud)
  1. 使用 FOR 循环:
let …
Run Code Online (Sandbox Code Playgroud)

javascript biginteger data-conversion uint typescript

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

如何将数据转换为DateTime对象

如何将日期字符串(通常为"ccyymmdd")转换为C#中的DateTime对象?

例如,如何将"20100715"转换为DateTime对象.

请 - 没有RTFM链接到Microsoft Tech Docs.

非常感谢...

c# datetime data-conversion

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

SSIS包中的数据转换问题 - 文本到GUID

我正在开发一个SSIS包,它将打开Excel电子表格并将数据导入SQL Server 2008中的数据库表.当我尝试将Excel列数据类型转换Unicode String [DT_WSTR]为唯一标识符数据类型:时unique identifier [DT_GUID],我收到以下错误:

"转换规范的字符值无效"

我需要做些什么来解决转换错误?

excel ssis data-conversion sql-server-2008

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

如何将字符串转换为以null结尾的字符串?

如何将简单的字符串转换为以null结尾的字符串?

例:

示例字符串:"测试消息"
以下是字节:

54 65 73 74 20 6D 65 73 73 61 67 65
Run Code Online (Sandbox Code Playgroud)

我需要字符串,如下所示:

54 00 65 00 73 00 74 00 20 00 6D 00 65 00 73 00 73 00 61 00 67 00 65 00 00
Run Code Online (Sandbox Code Playgroud)

我可以使用循环,但代码太难了.如何通过本机方法进行此转换?

c# string data-conversion

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

c# - 字节数组不正确转换为MB

该文件大约是24mb,并且它保存在DataBase中,所以我将它转换为位数组然后,经过多次建议后,我使用了bitconverter.tosingle(,),这给了我不好的结果,这是我的代码:

     byte[] imgData = prod.ImageData;

     float myFloat = BitConverter.ToSingle(imgData, 0);

     float mb = (myFloat / 1024f) / 1024f;
Run Code Online (Sandbox Code Playgroud)

当我调试时,我得到这些结果:

字节[24786273]

myFloat = 12564.0361

mb = 0.0119819986

奇怪的是,数组的大小与文件的大小完全相同.如何正确地将其转换为浮动然后显示为mb?

编辑:我尝试将myFloat设置为imgData.Length,然后大小是正确的,但是这是一个正确的方法,并且它会在未来导致更大的值的问题?

data-conversion c#-4.0

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

如何在C#中将大二进制字符串转换为Hexa十进制字符串格式?

我正在尝试将二进制数据(字符串)转换为十六进制数据(字符串)

 string BinaryData = 1011000000001001001000110100010101100111100000000001000001111011100010101011";

 string HexaDecimalData = Convert.ToInt64 ( BinaryData, 2 ).ToString ( "X" );
Run Code Online (Sandbox Code Playgroud)

我得到一个OverflowException : Value was either too large or too small for a UInt64. 我可以理解二进制字符串很大,但同时我不能想到比Int64更大的数据类型.

有什么建议?

c# data-conversion

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

JavaScript浮点数混淆

我遇到了一些混乱的手术。

var a = 0.1;
var b = 0.2;
var c = 0.3;

console.log(a); // 0.1
console.log(b); // 0.2
console.log(c); // 0.3
Run Code Online (Sandbox Code Playgroud)

但,

consolo.log(a+b+c) // 0.6000000000000001.
Run Code Online (Sandbox Code Playgroud)

而

console.log(a+(b+c)) // 0.6
Run Code Online (Sandbox Code Playgroud)

我知道Javascript使用二进制浮点数,因此无法准确表示0.1、0.2、0.3,但是(b + c)的括号是什么?这里有什么转换或四舍五入吗?

非常感谢,

javascript rounding data-conversion

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

Python:将十六进制字符串转换为int并返回

我的python脚本通过串行线路获取并发送单词。每个字都是带符号的24位值,以十六进制字符串形式接收。现在,脚本应该将这些字符串转换为整数,对其进行一些计算,然后以相同的格式发送回去。我的问题是,如何进行此转换

Examples

Rx string -> calc int
 012345   ->  74565
 fedcba   -> -74566

calc int -> Tx string
  74565  -> 012345
 -74566  -> fedcba
Run Code Online (Sandbox Code Playgroud)

如何才能做到这一点?

python string hex data-conversion

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