Where people come together to learn, code, and play. Custom-built HTTP server, site generator, and website from scratch using no external libraries. Goal is to be as minimalistic and fun as possible.
http://projectdivar.com
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
1.8 KiB
53 lines
1.8 KiB
package readers;
|
|
import java.io.IOException;
|
|
import java.io.InputStreamReader;
|
|
import java.nio.file.Path;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
public abstract class Reader{
|
|
int score;
|
|
int rank;
|
|
int[] notes = new int[7];
|
|
int difficulty;
|
|
String title;
|
|
int pct;
|
|
int maxcombo;
|
|
String other;
|
|
List<Box> readRegions = new ArrayList<>();
|
|
String readAllBoxes(Path img) {
|
|
try {
|
|
Process p = Runtime.getRuntime().exec(new String[]{"python3","runocr.py","ja",img.toAbsolutePath().toString()});
|
|
while (p.isAlive());
|
|
InputStreamReader result = new InputStreamReader(p.getInputStream());
|
|
StringBuilder sb = new StringBuilder();
|
|
while (result.ready()) {
|
|
sb.append((char)result.read());
|
|
}
|
|
result.close();
|
|
sb.append("\n");
|
|
p = Runtime.getRuntime().exec(new String[]{"python3","runocr.py","en",img.toAbsolutePath().toString()});
|
|
while (p.isAlive());
|
|
result = new InputStreamReader(p.getInputStream());
|
|
while (result.ready()) {
|
|
sb.append((char)result.read());
|
|
}
|
|
return sb.toString();
|
|
} catch (IOException e) {
|
|
e.printStackTrace();
|
|
}
|
|
return "";
|
|
}
|
|
void trimAllData(String[] data) {
|
|
StringBuilder sb = new StringBuilder();
|
|
for (int i=0;i<data.length;i++) {
|
|
sb.delete(0,sb.length());
|
|
for (int j=0;j<data[i].length();j++) {
|
|
if (data[i].charAt(j)!='['&&data[i].charAt(j)!='('&&data[i].charAt(j)!=')'&&data[i].charAt(j)!=']') {
|
|
sb.append(data[i].charAt(j));
|
|
}
|
|
}
|
|
data[i]=sb.toString();
|
|
}
|
|
}
|
|
} |