我想将文件上传到我的数据库,上传后将其导入并最终将数据导出到我的数据库中。我的上传工作正常,但我不确定如何在上传后获取文件的绝对路径。我可以打印出文档的名称,但是如果上传了相同的文档名称,它会被附加,但如果我调用它仍然显示原始文件名form.cleaned_data['document'].name. 我该怎么做才能获得绝对文件路径,然后调用一个函数来开始处理这个文件?
所以这就是我想要做的:
模型.py
from django.db import models
# Create your models here.
class Document(models.Model):
description = models.CharField(max_length=255, blank=True)
document = models.FileField(upload_to='documents/')
uploaded_at = models.DateTimeField(auto_now_add=True)
Run Code Online (Sandbox Code Playgroud)
视图.py
from django.shortcuts import render, redirect
from django.views import View
# Create your views here.
from .forms import DocumentForm
from .models import Document
class FileUpload(View):
def post(self, request):
form = DocumentForm(request.POST, request.FILES)
if form.is_valid():
print()
print(form.cleaned_data['document'].name)
form.save()
return redirect('main_db_model:home')
else:
return …Run Code Online (Sandbox Code Playgroud) 我正在编写一个具有 Java 服务器/客户端套接字的程序。将会有很多消息来回发送,并且在某些情况下,向服务器发送消息并等待一段时间,直到服务器发回“执行”消息。
这是我的计划:
我已经开始构建程序来进行上述设置,一旦服务器收到消息,服务器就会根据输入执行操作,然后将消息发送回客户端。我过去遇到过消息无法正确发送或接收的问题,所以我的问题是:
我快要疯了.也许这是因为我已经工作了12个小时......但是为什么我的if语句在运行时没有评估为真if (band.equals("4384")?我正在打印band到屏幕上,它正在读取4384但它不会评估为真.我已经多次使用.equals()而没有问题,我做错了什么?
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
String endBand = " ";
String str = "SCELL: UARFCN 4384, Prim. SC: 362, RSCP: 70, EcNo: 44";
endBand = getBandNumber(str);
System.out.println("endBand is " + endBand);
}
// ************************************************
// Returns the current band that the device is on.
// Currently only coded for 3G
// ************************************************
private static String getBandNumber(String str) {
// The string returned …Run Code Online (Sandbox Code Playgroud) 所以我认为我理解如何实现一个指针数组,但我的编译器说不然=(.任何帮助都会受到赞赏,我觉得我很接近,但我错过了一些关键的东西.
1.)我有一个名为node的结构声明:
struct node {
int num;
node *next;
}
Run Code Online (Sandbox Code Playgroud)
2.)我已经声明了一个指针数组的指针,如下所示:
node **arrayOfPointers;
Run Code Online (Sandbox Code Playgroud)
3.)然后我通过这样做动态创建指针数组:
arrayOfPointers = new node*[arraySize];
Run Code Online (Sandbox Code Playgroud)
我的理解是,此时,arrayOfPointers现在指向x节点类型的数组,其中x为=到arraySize.
4.)但是当我想访问arrayOfPointers中的第五个元素来检查它的下一个指针是否为空时,我收到了一个分段错误错误.使用这个:
if (arrayOfPointers[5]->next == NULL)
{
cout << "I'm null" << endl;
}
Run Code Online (Sandbox Code Playgroud)
有谁知道为什么会这样?我可以通过执行以下操作为num赋值:arrayOfPointers [5] - > num = 77;
但我很困惑为什么检查结构中的指针导致错误.此外,虽然我们正在使用它,将arrayOfPointers传递给函数的正确原型是什么?它仍然是(节点**arrayOfPointers)还是其他类似的东西(node*&arrayOfPointers)?
提前感谢您提供的任何提示或指示(哈哈)!
完整代码(更新):
/*
* Functions related to separate chain hashing
*/
struct chainNode
{
int value;
chainNode *next;
};
chainNode* CreateNewChainNode (int keyValue)
{
chainNode *newNode;
newNode = new (nothrow) chainNode;
newNode->value = keyValue;
newNode->next = NULL;
return newNode;
} …Run Code Online (Sandbox Code Playgroud) 我在这做错了什么?我收到错误,输入流中没有任何内容,但事实并非如此.文件在那里,标题正确.我想抓住我放在XML文件中的ip地址.是否有更好的方法来解析文件而不是dBuilder.parse(XMLReader.class.getResourceAsStream("C:\\Tools\\CLA\\test.xml"));?
我遇到了这个例外:
Caused by: java.lang.IllegalArgumentException: InputStream cannot be null
at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
at com.Intel.ameier.XMLparser.TryXML(XMLparser.java:17)
Run Code Online (Sandbox Code Playgroud)
这是代码:
import java.io.IOException;
import org.xml.sax.*;
import org.w3c.dom.*;
import javax.xml.parsers.*;
public class XMLparser {
protected void TryXML() throws ParserConfigurationException, SAXException, IOException{
DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = builderFactory.newDocumentBuilder();
Document document = dBuilder.parse(XMLReader.class.getResourceAsStream("C:\\Tools\\test.xml"));
document.normalize();
NodeList rootNodes = document.getElementsByTagName("info");
Node rootNode = rootNodes.item(0);
Element rootElement = (Element)rootNode;
NodeList compList = rootElement.getElementsByTagName("computer");
for(int i = 0;i < compList.getLength(); i++){
Node computer = compList.item(i);
Element compElement = (Element)computer; …Run Code Online (Sandbox Code Playgroud) 有没有办法用ADB命令查询电话呼叫状态?
例如,我想查看电话中的电话是否仍处于活动状态,或者电话呼叫是否仍然存在(已丢弃)
java ×4
adb ×1
android ×1
arrays ×1
c++ ×1
django ×1
django-forms ×1
django-views ×1
equals ×1
inputstream ×1
linked-list ×1
pointers ×1
python ×1
sockets ×1
string ×1
xml ×1