我正在处理这样一条线:
mkdir -p "$DEST_ROOT_PATH/"{"$DEST_DIR1","$DEST_DIR2", ..., "$DEST_DIRN"}
Run Code Online (Sandbox Code Playgroud)
这条线很长.我想剪切它,使其宽度适合80列线.我试图用反斜杠逃避结束,但空间对齐打破了扩展:
$ echo "ha"{a,b,\
> c}
ha{a,b, c}
Run Code Online (Sandbox Code Playgroud) 鉴于:
byteString 是
-----------------------------149742642616556
Content-Disposition: form-data; name="file"; filename="test.txt"
Content-Type: text/plain
test
-----------------------------149742642616556--
Run Code Online (Sandbox Code Playgroud)
然后这段代码(未优化):
Pattern pattern = Pattern.compile(BOUNDARY_PATTERN); // "(?m)\\A-+\\d+$"
Matcher matcher = pattern.matcher(byteString);
String boundary = null;
while (matcher.find()) {
boundary = matcher.group();
contentType = "multipart/form-data; boundary=" + boundary;
}
LOG.info("Content Type = " + contentType);
@SuppressWarnings("deprecation")
org.apache.commons.fileupload.MultipartStream multipartStream =
new org.apache.commons.fileupload.MultipartStream(new ByteArrayInputStream(byteString.getBytes()), boundary.getBytes());
ByteArrayOutputStream bos = new ByteArrayOutputStream();
multipartStream.readBodyData(bos); // throw error
byte[] byteBody = bos.toByteArray();
Run Code Online (Sandbox Code Playgroud)
抛出这个错误:
org.apache.commons.fileupload.MultipartStream$MalformedStreamException: Stream ended unexpectedly
at org.apache.commons.fileupload.MultipartStream$ItemInputStream.makeAvailable(MultipartStream.java:1005)
at org.apache.commons.fileupload.MultipartStream$ItemInputStream.read(MultipartStream.java:903)
at java.io.InputStream.read(InputStream.java:101)
at org.apache.commons.fileupload.util.Streams.copy(Streams.java:100) …Run Code Online (Sandbox Code Playgroud) 我写了一个使用while循环的简单猜谜游戏.如果用户键入任何单词的初始值为"y",游戏将再次运行,但如果用户键入任何其他单词,游戏将退出并发出报告.
public static void loopcalc(Scanner console) {
int totalRounds = 0, totalGuesses = 0, best = 1000000;
boolean want = true;
while (want = true) {
int eachguess = playOneGame(console);
totalRounds++;
totalGuesses += eachguess;
System.out.println("Do you want to play again?");
String input = console.next();
if (input.toLowerCase().charAt(0) == 'y') {
want = true;
} else {
want = false;
}
best = Math.min(eachguess, best);
}
report(console, totalGuesses, totalRounds, best);
}
Run Code Online (Sandbox Code Playgroud)
抱歉,我不知道如何正确输入密码.
鉴于这段代码:
<%
Response.Write Server.URLEncode("a doc file.asp")
%>
Run Code Online (Sandbox Code Playgroud)
它输出一段时间(如 Javascript call encodeURI):
a%20doc%20file.asp
Run Code Online (Sandbox Code Playgroud)
现在,不知为何,我得到:
a+doc+file%2Easp
Run Code Online (Sandbox Code Playgroud)
我不确定我是怎么做到的(可能是文件内容编码为 ANSI/UTF-8)。为什么会发生这种情况,我怎样才能获得 的第一个行为Server.URLEncode,即使用百分比编码?
java ×2
apache ×1
asp-classic ×1
bash ×1
curly-braces ×1
indentation ×1
java-8 ×1
loops ×1
urlencode ×1
vbscript ×1
while-loop ×1