草庐IT

byte-shifting

全部标签

c# - 在 C# 中使用 byte/short 等的任何理由?

超过了int类型?很多代码要么将int与double/floats结合使用。我知道有类似的.NET移动版本,所以byte/short有自己的用途,但对于桌面应用程序有什么意义吗?当我从事C++工作(游戏编程)时,我非常了解我使用的每种数据类型,尽管我在C#/Java工作中没有这种感觉。如果我知道我的循环永远不会超出字节的界限,那么使用字节say会有什么好处吗? 最佳答案 与long相比,单个byte在内存方面不会产生巨大差异,但是当您开始拥有大型数组时,这7个额外的字节将使差别很大。此外,数据类型有助于更好地传达开发人员的意图:当您

java - Byte-buddy:生成具有循环类型的类

我正在尝试生成具有循环类依赖性的类,类似于这个问题:ByteBuddy-Handlingcyclicreferencesingeneratedclasses作为一个最小的例子,我想生成的类有这样的依赖关系://classAdependsonclassB,andvice-versafinalclassA{BtheB;}finalclassB{AtheA;}上面链接中接受的答案没有提供足够的信息让我让它工作。这是我尝试过的:importnet.bytebuddy.ByteBuddy;importnet.bytebuddy.description.type.TypeDescription;i

java - Socket.getInputStream().read(byte[]) 是否保证在至少读取一些数据后不会阻塞?

类InputStream的JavaDoc说明如下:Readsuptolenbytesofdatafromtheinputstreamintoanarrayofbytes.Anattemptismadetoreadasmanyaslenbytes,butasmallernumbermayberead.Thenumberofbytesactuallyreadisreturnedasaninteger.Thismethodblocksuntilinputdataisavailable,endoffileisdetected,oranexceptionisthrown.这也符合我的经验。例如,

java - 如何使用 Hibernate 映射 byte[] 属性?

我正在使用Hibernate/Java将实体持久保存到数据库中。该实体有一个密码字段,它是一个字符串。在我的应用程序中注册用户时,我使用SHA-1散列密码(我承认这有点弱)。这会产生一个byte[],然后我将其转换为String使用新字符串(byte[]arr);每当我想登录用户时,我只需从数据库中检索散列密码(如String)并将其与登录时输入密码的摘要进行比较hashedPasswordFromDatabase.equals(SHA1_HASH(inputPassword));这在我的开发系统(Windows7、JDK1.6.0_23/JDK1.7、MySQL5.5、Tomcat6

javax.validation : Constraint to validate a string length in bytes

我正在使用javax.validation来验证一些bean字段的值。这是我通常使用的:publicclassMarket{@NotNull@Size(max=4)privateStringmarketCode;@Digits(integer=4,fraction=0)privateIntegerstalls;//getters/setters}这将确保每个Market实例都有一个最大长度为4个字符的市场代码和一个最大为4位整数和0的摊位数量十进制数字。现在,我使用这个bean从DB加载/存储数据。在数据库中,我有如下定义的表Markets:CREATETABLEMARKETS(MAR

来自 JDK 1.6 的 JavaCompiler : how to write class bytes directly to byte[] array?

所以我最近了解到新的JavaCompilerAPI在JDK1.6中可用。这使得直接从运行代码将String编译为.class文件变得非常简单:StringclassName="Foo";StringsourceCode="...";JavaCompilercompiler=ToolProvider.getSystemJavaCompiler();ListunitsToCompile=newArrayList(){{add(newJavaSourceFromString(className,sourceCode));}};StandardJavaFileManagerfileManage

java - BufferedInputStream 转换为 byte[] 以通过 Socket 发送到数据库

我一直在四处寻找这个问题的答案,但找不到任何关于它的东西。今天早些时候,我问我如何通过字节数组将一个文件变成一个字符串,然后再返回,以便稍后检索。人们告诉我的是,我必须只存储字节数组,以避免讨厌的编码问题。所以现在我已经开始着手解决这个问题,但我现在遇到了瓶颈。基本上,我之前使用无缓冲流将文件转换为字节数组。这在理论上很好用,但它会占用大量内存,最终会抛出堆大小异常。我应该改用缓冲流(或者有人告诉我),而我现在遇到的问题是从BufferedInputStream到byte[]。我尝试复制并使用本文档中的方法http://docs.guava-libraries.googlecode.c

将文件读取到 byte[] 数组时出现 java.lang.OutOfMemoryError

有没有一种更干净、更快速的方法来做到这一点:BufferedReaderinputReader=newBufferedReader(newInputStreamReader(context.openFileInput("data.txt")));StringinputString;StringBuilderstringBuffer=newStringBuilder();while((inputString=inputReader.readLine())!=null){stringBuffer.append(inputString+"\n");}text=stringBuffer.toS

java - pdfbox 将 pdf 转换为图像 byte[]

使用pdfbox,是否可以将PDF(或PDFbyte[])转换为图像byte[]?我浏览了几个在线示例,我能找到的唯一示例描述了如何将转换后的文件直接写入文件系统或将其转换为JavaAWT对象。我不想招致将图像文件写入文件系统、读入byte[]、然后删除它的IO。所以我可以这样做:StringdestinationImageFormat="jpg";booleansuccess=false;InputStreamis=getClass().getClassLoader().getResourceAsStream("example.pdf");PDDocumentpdf=PDDocume

java - Jackson->Jackson + HttpPost = "Invalid UTF-8 middle byte",设置 Mime 和编码

我在我的客户端中使用ApacheHTTP客户端库和Jackson。当我将JSON发送到服务器时,出现错误:org.codehaus.jackson.JsonParseException:InvalidUTF-8middlebyte0x65at[Source:HttpInputOverHTTP@22a4ac95;line:1,column:81]如果我没有设置任何header,我会收到invalidmediatype,这是有道理的。如果我使用curl和相同的header,服务器会接受它,所以我认为服务器没问题(只是巧合,它也在使用Jackson)这些是文档;我已将其硬编码为仅使用8位字符