『壹』 java 將二進制數組 中的值 不變化的取出存為二進制.
//利用位運算。
intlen=arr.length();
intans=0;
for(inti=0;i<len;i++){
ans|=(arr[i]<<(len-i));
}
System.out.println(ans);
要是補第一個0可以用格式化輸出。
『貳』 java中 將二進制位元組 追加到位元組數組中
下面代碼是有圖片上傳的,附件上傳也和這個差不多,你自己改改吧,對自己有好處的,希望對你有幫助。
/**
* 圖片上傳
* @param request
* @return
* @throws Exception
*/
private List<?> imgUpload(HttpServletRequest request)throws Exception{
//存放圖片對象
List<ImgObject> imgUrls = new ArrayList<ImgObject>();
//圖片後綴
String imgSuffix = ".jpeg";
//存放目錄
String dirName = "/upload/Img";
//獲得存儲的目錄
String dir = request.getSession().getServletContext().getRealPath(dirName);
//伺服器地址
String path = request.getScheme() + "://" + request.getServerName()
+ ":" + request.getServerPort() + request.getContextPath()
+ dirName;
//實例化File對象
File mdFile = new File(dir);
//如果目錄不存在,創建一個目錄
if(!mdFile.exists()){
mdFile.mkdirs();
}
//轉換為MultipartHttpRequest對象
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
//頁面控制項的文件流
List<MultipartFile> multiFiles = multipartRequest.getFiles("contentFile");
for(MultipartFile multiFile : multiFiles){
if(!multiFile.isEmpty()){
//文件名
String fileName = UUID.randomUUID().toString()+imgSuffix;
//圖片url
String imgUrl = path +"/"+fileName;
//實例化File對象
File savaFile = new File(dir+"/"+fileName);
Image img = ImageIO.read(multiFile.getInputStream());
int width=img.getWidth(null);
int height=img.getHeight(null);
BufferedImage bufferImg = new BufferedImage((int) width, (int) height, BufferedImage.TYPE_INT_RGB);
bufferImg.getGraphics().drawImage(img.getScaledInstance(width, height, Image.SCALE_SMOOTH), 0, 0, null);
ImageIO.write(bufferImg, "JPEG", savaFile);
//封裝圖片信息
ImgObject tbcic = new ImgObject();
tbcic.setImgUrl(imgUrl);
tbcic.setImgWidth(width);
tbcic.setImgHeigth(height);
imgUrls.add(tbcic);
}
}
return imgUrls;
}
『叄』 Java中如何將一串二進制數放到數組中
剛寫的 給我分吧。絕對是自己寫的。
public class Find {
/**
* @param args
* @author zhou2003737
* @
*/
public static void main(String[] args) {
int[]a=;//測試數組
int[] b=new Find().ToLower(a);//測試從大到小
System.out.println("數組a降序排列為:");
for (int i = 0; i < b.length; i++) {
System.out.print(b[i]+" ");//列印從大到小數據
}
int[]c=new Find().ToUpper(a);//測試從小到大
System.out.println("\r數組a升序排列為:");
for (int i = 0; i < c.length; i++) {
System.out.print(c[i]+" ");
}
}
/*
* 從大到小順序
*/
public int[] ToLower(int[] a){
for (int i = 0; i < a.length; i++) {
for (int j = i; j < a.length; j++) {
if (a[j]>a[i]) {
int temp=a[j];
a[j]=a[i];
a[i]=temp;
}
}
}
return a;
}
/*
* 從小到大順序
*/
public int[] ToUpper(int[] a)
{
for (int i = 0; i < a.length; i++) {
for (int j = i; j < a.length; j++) {
if (a[j]<a[i]) {
int temp=a[j];
a[j]=a[i];
a[i]=temp;
}
}
}
return a;
}
}
請參考
『肆』 利用java,怎麼把二進制字元串轉化為相應的二進制數組
java.lang.Integer這個API包中有進制轉換的函數
public static String toBinaryString(int i)
public static String toHexString(int i)
public static String toOctalString(int i)
這3個函數都可以將十進制的整數轉換成二、一六、八進制數
不過轉換後的結果都是字元串的形式
『伍』 跪求「java中二進制怎麼表示」
java中二進制的表示:
1、Java中定義兩個數,然後分別列印出它們的二進製表示(例如7和-7):
System.out.println("Java二進制7:"+Integer.toBinaryString(7));
System.out.println("Java二進制-7:"+Integer.toBinaryString(-7));
輸出:
Java二進制7: 111
Java二進制-7:
7的二進制就是111
-7轉化二進制的過程:
(1)把-7轉化成7,二進制是 111
(2)Java中對於不滿32位的int二進制自動補齊,所以變成了 (29個0)111
(3)然後取反 (29個1)000
(4)然後加1 (29個1)001
(5)java二進制數組擴展閱讀:
c語言中二進制的轉換:
用函數轉換itoa(值,數組名,進制)
#include<stdio.h>
#include<stdlib.h>
voidmain()
{
char str[8];
inti=8;
itoa(i,str,2);
printf("%s",str);
}
『陸』 java中二進制怎麼表示
一、二進制的表示方法
有0,1組成。以0b開頭。
代碼的表示方法:
System.out.println(0b100)
二、不同進制的數據表現:
八進制:由0,1,....,7.以0開頭。
十進制:由0,1......,9.默認整數。
十六進制:由0,1,......9,a,b,c,d,e,f(大小寫均可)組成。
十進制:System.out.println(100);
八進制:System.out.println(0100);
十六進制: System.out.println(0x100);
(6)java二進制數組擴展閱讀
java 判斷二進制文件的代碼:
public static boolean isBinary(File file)
{
boolean isBinary = false;
try {
FileInputStream fin = new FileInputStream(file);
long len = file.length();
for (int j = 0; j < (int) len; j++) {
int t = fin.read();
if (t < 32 && t != 9 && t != 10 && t != 13) {
isBinary = true;
break;
}
}
} catch (Exception e) {
e.printStackTrace();
}
return isBinary;
}
『柒』 Java 二進制數組怎樣序列化
在JAVA中,所謂序列化,是指將一個對象變為Byte[]然後Output出去。反序列化,是指將Byte[]重新變為對象,讀入內存中。所以,你所說的「二進制數組」,本身就是序列化的結果形式,已不能且不必再序列化。
『捌』 java將二進制讀入位元組數組中,然後將倆個位元組一起轉化為十進制
我給你一種方法:
你把字母分別用空格「
」隔開輸入,那麼接收到的字元串就為:"a
b
c
d....."
示例:
public
class
splitdemo
{
public
static
string[]
ss
=
new
string[26];
public
splitdemo()
{
string
s
="a
b
c
d.....";
//此處應為鍵盤接收
//
在每個空格字元處進行分解。
ss
=
s.split("
");
}
『玖』 用JAVA把二進制數轉換成十進制數。
二進制轉十進制
Integer.valueOf("0101",2).toString()
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("輸入一個二進制數: ");
String a = sc.nextLine();
int d = Integer.parseInt(a, 2); // 2進制
int o = Integer.parseInt(a, 8); // 8進制
System.out.println("二進制轉為十進制: " + d);
System.out.println("八進制轉為十進制: " + o);
計算機內部使用二進製表示數
二進制與十進制的轉換是比較復雜的。比如我們要讓計算機計算50+50=?,那麼首先要把十進制的50轉換成二進制的「50」——110010,這個過程要做多次除法,而計算機對於除法的計算是最慢的。把十進制的50轉換成二進制的110010還不算完,計算出結果1100100之後還要再轉換成十進制數100,這是一個做乘法的過程,對計算機來說雖然比除法簡單,但計算速度也不快。
以上內容參考:網路-十進制
『拾』 Java中怎麼把一串二進制轉換成數組
java.io.ObjectOutputStream使用這個,加java.io.ByteArrayOutputStream