1 /* 2 * Copyright (C) 2018 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package util.build; 18 19 import java.io.File; 20 import java.io.FileInputStream; 21 import java.io.IOException; 22 23 public class FileUtil { 24 readFile(File f)25 public static String readFile(File f) { 26 if (f.length() > Integer.MAX_VALUE) { 27 throw new IllegalArgumentException(f.toString()); 28 } 29 byte tmp[] = new byte[(int)f.length()]; 30 try (FileInputStream fis = new FileInputStream(f)) { 31 int pos = 0; 32 while (pos != tmp.length) { 33 int read = fis.read(tmp, pos, tmp.length - pos); 34 if (read == -1) { 35 throw new IOException("Unexpected EOF"); 36 } 37 pos += read; 38 } 39 return new String(tmp); 40 } catch (Exception e) { 41 throw new RuntimeException(e); 42 } 43 } 44 45 } 46